4074a9:	5f                   	pop    %edi
4074aa:	84 db                	test   %bl,%bl
4074ac:	75 14                	jne    0x4074c2
4074ae:	0f 31                	rdtsc
4074b0:	33 c9                	xor    %ecx,%ecx
4074b2:	03 c8                	add    %eax,%ecx
4074b4:	0f 31                	rdtsc
4074b6:	2b c1                	sub    %ecx,%eax
4074b8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4074bb:	83 86 5c 05 00 00 ba 	addl   $0xffffffba,0x55c(%esi)
4074c2:	00 5e 31             	add    %bl,0x31(%esi)
4074c5:	8a 46 31             	mov    0x31(%esi),%al
4074c8:	fe c0                	inc    %al
4074ca:	00 46 32             	add    %al,0x32(%esi)
4074cd:	5e                   	pop    %esi
4074ce:	b8 01 00 00 00       	mov    $0x1,%eax
4074d3:	5b                   	pop    %ebx
4074d4:	8b e5                	mov    %ebp,%esp
4074d6:	5d                   	pop    %ebp
4074d7:	c3                   	ret
4074d8:	14 3b                	adc    $0x3b,%al
4074da:	80 72 88 f3          	xorb   $0xf3,-0x78(%edx)
4074de:	5e                   	pop    %esi
4074df:	05 55 8b ec 81       	add    $0x81ec8b55,%eax
4074e4:	ec                   	in     (%dx),%al
4074e5:	68 02 00 00 53       	push   $0x53000002
4074ea:	56                   	push   %esi
4074eb:	57                   	push   %edi
4074ec:	33 c0                	xor    %eax,%eax
4074ee:	68 06 02 00 00       	push   $0x206
4074f3:	50                   	push   %eax
4074f4:	8d 8d 9a fd ff ff    	lea    -0x266(%ebp),%ecx
4074fa:	51                   	push   %ecx
4074fb:	66 89 85 98 fd ff ff 	mov    %ax,-0x268(%ebp)
407502:	e8 d9 0e 01 00       	call   0x4183e0
407507:	8b 75 08             	mov    0x8(%ebp),%esi
40750a:	33 d2                	xor    %edx,%edx
40750c:	33 c0                	xor    %eax,%eax
40750e:	8d 8d 98 fd ff ff    	lea    -0x268(%ebp),%ecx
407514:	66 89 55 fc          	mov    %dx,-0x4(%ebp)
407518:	51                   	push   %ecx
407519:	8d 55 f0             	lea    -0x10(%ebp),%edx
40751c:	52                   	push   %edx
40751d:	56                   	push   %esi
40751e:	c6 45 a0 00          	movb   $0x0,-0x60(%ebp)
407522:	89 45 a1             	mov    %eax,-0x5f(%ebp)
407525:	89 45 a5             	mov    %eax,-0x5b(%ebp)
407528:	89 45 a9             	mov    %eax,-0x57(%ebp)
40752b:	89 45 ad             	mov    %eax,-0x53(%ebp)
40752e:	89 45 b1             	mov    %eax,-0x4f(%ebp)
407531:	66 89 45 b5          	mov    %ax,-0x4b(%ebp)
407535:	88 45 b7             	mov    %al,-0x49(%ebp)
407538:	c7 45 f0 77 00 69 00 	movl   $0x690077,-0x10(%ebp)
40753f:	c7 45 f4 6e 00 64 00 	movl   $0x64006e,-0xc(%ebp)
407546:	c7 45 f8 69 00 72 00 	movl   $0x720069,-0x8(%ebp)
40754d:	c7 45 b8 5c 00 53 00 	movl   $0x53005c,-0x48(%ebp)
407554:	c7 45 bc 79 00 73 00 	movl   $0x730079,-0x44(%ebp)
40755b:	c7 45 c0 74 00 65 00 	movl   $0x650074,-0x40(%ebp)
407562:	c7 45 c4 6d 00 33 00 	movl   $0x33006d,-0x3c(%ebp)
407569:	c7 45 c8 32 00 5c 00 	movl   $0x5c0032,-0x38(%ebp)
407570:	c7 45 cc 64 00 72 00 	movl   $0x720064,-0x34(%ebp)
407577:	c7 45 d0 69 00 76 00 	movl   $0x760069,-0x30(%ebp)
40757e:	c7 45 d4 65 00 72 00 	movl   $0x720065,-0x2c(%ebp)
407585:	c7 45 d8 73 00 5c 00 	movl   $0x5c0073,-0x28(%ebp)
40758c:	c7 45 dc 65 00 74 00 	movl   $0x740065,-0x24(%ebp)
407593:	c7 45 e0 63 00 5c 00 	movl   $0x5c0063,-0x20(%ebp)
40759a:	c7 45 e4 68 00 6f 00 	movl   $0x6f0068,-0x1c(%ebp)
4075a1:	c7 45 e8 73 00 74 00 	movl   $0x740073,-0x18(%ebp)
4075a8:	c7 45 ec 73 00 00 00 	movl   $0x73,-0x14(%ebp)
4075af:	e8 8c 10 00 00       	call   0x408640
4075b4:	6a 00                	push   $0x0
4075b6:	8d 45 b8             	lea    -0x48(%ebp),%eax
4075b9:	50                   	push   %eax
4075ba:	8d 8d 98 fd ff ff    	lea    -0x268(%ebp),%ecx
4075c0:	51                   	push   %ecx
4075c1:	e8 fa 11 01 00       	call   0x4187c0
4075c6:	6a 00                	push   $0x0
4075c8:	6a 15                	push   $0x15
4075ca:	8d 95 98 fd ff ff    	lea    -0x268(%ebp),%edx
4075d0:	52                   	push   %edx
4075d1:	56                   	push   %esi
4075d2:	e8 f9 a8 00 00       	call   0x411ed0
4075d7:	6a 00                	push   $0x0
4075d9:	8b f8                	mov    %eax,%edi
4075db:	6a 01                	push   $0x1
4075dd:	8d 85 98 fd ff ff    	lea    -0x268(%ebp),%eax
4075e3:	50                   	push   %eax
4075e4:	56                   	push   %esi
4075e5:	e8 e6 a8 00 00       	call   0x411ed0
4075ea:	83 c4 44             	add    $0x44,%esp
4075ed:	8b d8                	mov    %eax,%ebx
4075ef:	85 ff                	test   %edi,%edi
4075f1:	74 43                	je     0x407636
4075f3:	85 db                	test   %ebx,%ebx
4075f5:	74 3f                	je     0x407636
4075f7:	6a 00                	push   $0x0
4075f9:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4075fc:	51                   	push   %ecx
4075fd:	56                   	push   %esi
4075fe:	e8 9d fc ff ff       	call   0x4072a0
407603:	83 c7 0e             	add    $0xe,%edi
407606:	57                   	push   %edi
407607:	8d 55 a0             	lea    -0x60(%ebp),%edx
40760a:	52                   	push   %edx
40760b:	53                   	push   %ebx
40760c:	e8 af 15 01 00       	call   0x418bc0
407611:	83 c4 18             	add    $0x18,%esp
407614:	53                   	push   %ebx
407615:	56                   	push   %esi
407616:	85 c0                	test   %eax,%eax
407618:	74 14                	je     0x40762e
40761a:	e8 21 0d 01 00       	call   0x418340
40761f:	83 c4 08             	add    $0x8,%esp
407622:	5f                   	pop    %edi
407623:	5e                   	pop    %esi
407624:	b8 01 00 00 00       	mov    $0x1,%eax
407629:	5b                   	pop    %ebx
40762a:	8b e5                	mov    %ebp,%esp
40762c:	5d                   	pop    %ebp
40762d:	c3                   	ret
40762e:	e8 0d 0d 01 00       	call   0x418340
407633:	83 c4 08             	add    $0x8,%esp
407636:	5f                   	pop    %edi
407637:	5e                   	pop    %esi
407638:	33 c0                	xor    %eax,%eax
40763a:	5b                   	pop    %ebx
40763b:	8b e5                	mov    %ebp,%esp
40763d:	5d                   	pop    %ebp
40763e:	c3                   	ret
40763f:	cc                   	int3
407640:	c3                   	ret
407641:	86 15 e2 f8 70 4b    	xchg   %dl,0x4b70f8e2
407647:	a2 d9 ae 2f 5a       	mov    %al,0x5a2faed9
40764c:	c3                   	ret
40764d:	ff 56 e0             	call   *-0x20(%esi)
407650:	55                   	push   %ebp
407651:	8b ec                	mov    %esp,%ebp
407653:	8b 45 08             	mov    0x8(%ebp),%eax
407656:	68 d6 00 00 00       	push   $0xd6
40765b:	50                   	push   %eax
40765c:	e8 af ab 00 00       	call   0x412210
407661:	50                   	push   %eax
407662:	e8 b9 07 01 00       	call   0x417e20
407667:	83 c4 0c             	add    $0xc,%esp
40766a:	5d                   	pop    %ebp
40766b:	c3                   	ret
40766c:	82 0c 8d 5a 55 8b ec 	orb    $0x8b,-0x1374aaa6(,%ecx,4)
407673:	8b
407674:	55                   	push   %ebp
407675:	0c 8b                	or     $0x8b,%al
407677:	45                   	inc    %ebp
407678:	08 6b d2             	or     %ch,-0x2e(%ebx)
40767b:	0d 8d 48 28 51       	or     $0x5128488d,%eax
407680:	8d 4c 02 44          	lea    0x44(%edx,%eax,1),%ecx
407684:	51                   	push   %ecx
407685:	83 c0 1c             	add    $0x1c,%eax
407688:	50                   	push   %eax
407689:	e8 92 04 01 00       	call   0x417b20
40768e:	83 c4 0c             	add    $0xc,%esp
407691:	5d                   	pop    %ebp
407692:	c3                   	ret
407693:	f7 43 62 ae be e2 e7 	testl  $0xe7e2beae,0x62(%ebx)
40769a:	3a 0f                	cmp    (%edi),%cl
40769c:	52                   	push   %edx
40769d:	b2 c6                	mov    $0xc6,%dl
40769f:	e2 55                	loop   0x4076f6
4076a1:	8b ec                	mov    %esp,%ebp
4076a3:	8b 45 0c             	mov    0xc(%ebp),%eax
4076a6:	8b 4d 08             	mov    0x8(%ebp),%ecx
4076a9:	50                   	push   %eax
4076aa:	51                   	push   %ecx
4076ab:	e8 60 ab 00 00       	call   0x412210
4076b0:	50                   	push   %eax
4076b1:	e8 3a 05 01 00       	call   0x417bf0
4076b6:	83 c4 0c             	add    $0xc,%esp
4076b9:	5d                   	pop    %ebp
4076ba:	c3                   	ret
4076bb:	b7 28                	mov    $0x28,%bh
4076bd:	b6 57                	mov    $0x57,%dh
4076bf:	c5 55 8b             	lds    -0x75(%ebp),%edx
4076c2:	ec                   	in     (%dx),%al
4076c3:	53                   	push   %ebx
4076c4:	56                   	push   %esi
4076c5:	8b 75 08             	mov    0x8(%ebp),%esi
4076c8:	57                   	push   %edi
4076c9:	8d 7e 28             	lea    0x28(%esi),%edi
4076cc:	8d 46 44             	lea    0x44(%esi),%eax
4076cf:	57                   	push   %edi
4076d0:	50                   	push   %eax
4076d1:	8d 5e 1c             	lea    0x1c(%esi),%ebx
4076d4:	53                   	push   %ebx
4076d5:	e8 46 04 01 00       	call   0x417b20
4076da:	89 86 98 0b 00 00    	mov    %eax,0xb98(%esi)
4076e0:	57                   	push   %edi
4076e1:	8d 46 44             	lea    0x44(%esi),%eax
4076e4:	50                   	push   %eax
4076e5:	53                   	push   %ebx
4076e6:	e8 35 04 01 00       	call   0x417b20
4076eb:	8b 4e 04             	mov    0x4(%esi),%ecx
4076ee:	57                   	push   %edi
4076ef:	8d 56 51             	lea    0x51(%esi),%edx
4076f2:	52                   	push   %edx
4076f3:	33 c8                	xor    %eax,%ecx
4076f5:	53                   	push   %ebx
4076f6:	89 8e 14 0a 00 00    	mov    %ecx,0xa14(%esi)
4076fc:	e8 1f 04 01 00       	call   0x417b20
407701:	8b 4e 04             	mov    0x4(%esi),%ecx
407704:	83 c4 24             	add    $0x24,%esp
407707:	33 c8                	xor    %eax,%ecx
407709:	5f                   	pop    %edi
40770a:	89 8e 18 0a 00 00    	mov    %ecx,0xa18(%esi)
407710:	5e                   	pop    %esi
407711:	5b                   	pop    %ebx
407712:	5d                   	pop    %ebp
407713:	c3                   	ret
407714:	fc                   	cld
407715:	84 54 d5 f2          	test   %dl,-0xe(%ebp,%edx,8)
407719:	6e                   	outsb  %ds:(%esi),(%dx)
40771a:	70 38                	jo     0x407754
40771c:	e9 6c 10 cb 55       	jmp    0x560b878d
407721:	8b ec                	mov    %esp,%ebp
407723:	56                   	push   %esi
407724:	8b 75 08             	mov    0x8(%ebp),%esi
407727:	56                   	push   %esi
407728:	c7 06 ff ff ff ff    	movl   $0xffffffff,(%esi)
40772e:	e8 fd e3 00 00       	call   0x415b30
407733:	56                   	push   %esi
407734:	89 46 10             	mov    %eax,0x10(%esi)
407737:	e8 a4 e2 00 00       	call   0x4159e0
40773c:	83 c4 08             	add    $0x8,%esp
40773f:	89 46 08             	mov    %eax,0x8(%esi)
407742:	85 c0                	test   %eax,%eax
407744:	75 05                	jne    0x40774b
407746:	32 c0                	xor    %al,%al
407748:	5e                   	pop    %esi
407749:	5d                   	pop    %ebp
40774a:	c3                   	ret
40774b:	e8 f0 fa ff ff       	call   0x407240
407750:	3d 00 03 00 00       	cmp    $0x300,%eax
407755:	0f 9f c0             	setg   %al
407758:	6a 73                	push   $0x73
40775a:	56                   	push   %esi
40775b:	88 46 34             	mov    %al,0x34(%esi)
40775e:	e8 ad aa 00 00       	call   0x412210
407763:	50                   	push   %eax
407764:	e8 87 04 01 00       	call   0x417bf0
407769:	83 c4 0c             	add    $0xc,%esp
40776c:	85 c0                	test   %eax,%eax
40776e:	74 0d                	je     0x40777d
407770:	8b 4e 04             	mov    0x4(%esi),%ecx
407773:	31 8e ac 04 00 00    	xor    %ecx,0x4ac(%esi)
407779:	c6 46 33 01          	movb   $0x1,0x33(%esi)
40777d:	56                   	push   %esi
40777e:	e8 ad 00 01 00       	call   0x417830
407783:	83 c4 04             	add    $0x4,%esp
407786:	89 46 0c             	mov    %eax,0xc(%esi)
407789:	85 c0                	test   %eax,%eax
40778b:	74 b9                	je     0x407746
40778d:	e8 ae fa ff ff       	call   0x407240
407792:	3d 00 03 00 00       	cmp    $0x300,%eax
407797:	0f 9f c2             	setg   %dl
40779a:	56                   	push   %esi
40779b:	88 56 35             	mov    %dl,0x35(%esi)
40779e:	e8 3d fc ff ff       	call   0x4073e0
4077a3:	56                   	push   %esi
4077a4:	e8 e7 f6 ff ff       	call   0x406e90
4077a9:	56                   	push   %esi
4077aa:	e8 41 f9 ff ff       	call   0x4070f0
4077af:	56                   	push   %esi
4077b0:	e8 ab f7 ff ff       	call   0x406f60
4077b5:	56                   	push   %esi
4077b6:	e8 f5 de ff ff       	call   0x4056b0
4077bb:	83 c4 14             	add    $0x14,%esp
4077be:	5e                   	pop    %esi
4077bf:	5d                   	pop    %ebp
4077c0:	c3                   	ret
4077c1:	18 65 cf             	sbb    %ah,-0x31(%ebp)
4077c4:	cb                   	lret
4077c5:	98                   	cwtl
4077c6:	a2 24 eb 22 83       	mov    %al,0x8322eb24
4077cb:	3f                   	aas
4077cc:	a4                   	movsb  %ds:(%esi),%es:(%edi)
4077cd:	1b 71 33             	sbb    0x33(%ecx),%esi
4077d0:	55                   	push   %ebp
4077d1:	8b ec                	mov    %esp,%ebp
4077d3:	56                   	push   %esi
4077d4:	8b 75 08             	mov    0x8(%ebp),%esi
4077d7:	56                   	push   %esi
4077d8:	e8 43 ff ff ff       	call   0x407720
4077dd:	83 c4 04             	add    $0x4,%esp
4077e0:	84 c0                	test   %al,%al
4077e2:	75 03                	jne    0x4077e7
4077e4:	5e                   	pop    %esi
4077e5:	5d                   	pop    %ebp
4077e6:	c3                   	ret
4077e7:	56                   	push   %esi
4077e8:	e8 d3 fe ff ff       	call   0x4076c0
4077ed:	6a 3c                	push   $0x3c
4077ef:	56                   	push   %esi
4077f0:	e8 ab 50 00 00       	call   0x40c8a0
4077f5:	83 c4 0c             	add    $0xc,%esp
4077f8:	b0 01                	mov    $0x1,%al
4077fa:	5e                   	pop    %esi
4077fb:	5d                   	pop    %ebp
4077fc:	c3                   	ret
4077fd:	cd cd                	int    $0xcd
4077ff:	13 55 8b             	adc    -0x75(%ebp),%edx
407802:	ec                   	in     (%dx),%al
407803:	8b 55 08             	mov    0x8(%ebp),%edx
407806:	56                   	push   %esi
407807:	57                   	push   %edi
407808:	33 c9                	xor    %ecx,%ecx
40780a:	bf 00 01 00 00       	mov    $0x100,%edi
40780f:	90                   	nop
407810:	8b c1                	mov    %ecx,%eax
407812:	c1 e0 18             	shl    $0x18,%eax
407815:	be 08 00 00 00       	mov    $0x8,%esi
40781a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
407820:	85 c0                	test   %eax,%eax
407822:	79 09                	jns    0x40782d
407824:	03 c0                	add    %eax,%eax
407826:	35 b7 1d c1 04       	xor    $0x4c11db7,%eax
40782b:	eb 02                	jmp    0x40782f
40782d:	03 c0                	add    %eax,%eax
40782f:	4e                   	dec    %esi
407830:	75 ee                	jne    0x407820
407832:	89 02                	mov    %eax,(%edx)
407834:	41                   	inc    %ecx
407835:	83 c2 04             	add    $0x4,%edx
407838:	4f                   	dec    %edi
407839:	75 d5                	jne    0x407810
40783b:	5f                   	pop    %edi
40783c:	5e                   	pop    %esi
40783d:	5d                   	pop    %ebp
40783e:	c3                   	ret
40783f:	cc                   	int3
407840:	55                   	push   %ebp
407841:	8b ec                	mov    %esp,%ebp
407843:	81 ec 00 04 00 00    	sub    $0x400,%esp
407849:	56                   	push   %esi
40784a:	68 fc 03 00 00       	push   $0x3fc
40784f:	8d 85 04 fc ff ff    	lea    -0x3fc(%ebp),%eax
407855:	6a 00                	push   $0x0
407857:	50                   	push   %eax
407858:	c7 85 00 fc ff ff 00 	movl   $0x0,-0x400(%ebp)
40785f:	00 00 00
407862:	e8 79 0b 01 00       	call   0x4183e0
407867:	8d 8d 00 fc ff ff    	lea    -0x400(%ebp),%ecx
40786d:	51                   	push   %ecx
40786e:	e8 8d ff ff ff       	call   0x407800