40d311:	31 d2                	xor    %edx,%edx
40d313:	38 53 3c             	cmp    %dl,0x3c(%ebx)
40d316:	75 66                	jne    0x40d37e
40d318:	e8 eb fa ff ff       	call   0x40ce08
40d31d:	89 43 5e             	mov    %eax,0x5e(%ebx)
40d320:	31 d2                	xor    %edx,%edx
40d322:	42                   	inc    %edx
40d323:	89 d8                	mov    %ebx,%eax
40d325:	e8 de fa ff ff       	call   0x40ce08
40d32a:	2b 43 5e             	sub    0x5e(%ebx),%eax
40d32d:	89 43 62             	mov    %eax,0x62(%ebx)
40d330:	89 d8                	mov    %ebx,%eax
40d332:	e8 91 c1 ff ff       	call   0x4094c8
40d337:	0f b6 c8             	movzbl %al,%ecx
40d33a:	66 ba 01 0f          	mov    $0xf01,%dx
40d33e:	b8 2c d2 40 00       	mov    $0x40d22c,%eax
40d343:	c6 43 6e 04          	movb   $0x4,0x6e(%ebx)
40d347:	e2 05                	loop   0x40d34e
40d349:	b8 dc d1 40 00       	mov    $0x40d1dc,%eax
40d34e:	e2 00                	loop   0x40d350
40d350:	e2 04                	loop   0x40d356
40d352:	fe ca                	dec    %dl
40d354:	b6 ff                	mov    $0xff,%dh
40d356:	e2 03                	loop   0x40d35b
40d358:	fe ce                	dec    %dh
40d35a:	41                   	inc    %ecx
40d35b:	e2 07                	loop   0x40d364
40d35d:	fe c6                	inc    %dh
40d35f:	b8 78 d2 40 00       	mov    $0x40d278,%eax
40d364:	e2 05                	loop   0x40d36b
40d366:	4a                   	dec    %edx
40d367:	ff 4b 6e             	decl   0x6e(%ebx)
40d36a:	41                   	inc    %ecx
40d36b:	e2 06                	loop   0x40d373
40d36d:	42                   	inc    %edx
40d36e:	b8 d4 d2 40 00       	mov    $0x40d2d4,%eax
40d373:	88 73 66             	mov    %dh,0x66(%ebx)
40d376:	88 53 6a             	mov    %dl,0x6a(%ebx)
40d379:	89 43 5a             	mov    %eax,0x5a(%ebx)
40d37c:	85 c0                	test   %eax,%eax
40d37e:	61                   	popa
40d37f:	75 0a                	jne    0x40d38b
40d381:	ff 75 08             	push   0x8(%ebp)
40d384:	e8 17 fe ff ff       	call   0x40d1a0
40d389:	eb 06                	jmp    0x40d391
40d38b:	ff 75 08             	push   0x8(%ebp)
40d38e:	ff 50 5a             	call   *0x5a(%eax)
40d391:	5d                   	pop    %ebp
40d392:	c2 04 00             	ret    $0x4
40d395:	8d 40 00             	lea    0x0(%eax),%eax
40d398:	56                   	push   %esi
40d399:	89 c6                	mov    %eax,%esi
40d39b:	84 d2                	test   %dl,%dl
40d39d:	74 06                	je     0x40d3a5
40d39f:	f6 46 26 01          	testb  $0x1,0x26(%esi)
40d3a3:	74 5c                	je     0x40d401
40d3a5:	f6 46 36 08          	testb  $0x8,0x36(%esi)
40d3a9:	74 4a                	je     0x40d3f5
40d3ab:	e8 90 eb ff ff       	call   0x40bf40
40d3b0:	50                   	push   %eax
40d3b1:	8b 88 f2 00 00 00    	mov    0xf2(%eax),%ecx
40d3b7:	e3 27                	jecxz  0x40d3e0
40d3b9:	39 f1                	cmp    %esi,%ecx
40d3bb:	74 23                	je     0x40d3e0
40d3bd:	8b 80 f2 00 00 00    	mov    0xf2(%eax),%eax
40d3c3:	8b 48 50             	mov    0x50(%eax),%ecx
40d3c6:	8b 91 ac 00 00 00    	mov    0xac(%ecx),%edx
40d3cc:	8b 89 a8 00 00 00    	mov    0xa8(%ecx),%ecx
40d3d2:	e3 05                	jecxz  0x40d3d9
40d3d4:	92                   	xchg   %eax,%edx
40d3d5:	ff d1                	call   *%ecx
40d3d7:	eb 07                	jmp    0x40d3e0
40d3d9:	6a 00                	push   $0x0
40d3db:	e8 38 77 ff ff       	call   0x404b18
40d3e0:	58                   	pop    %eax
40d3e1:	89 b0 f2 00 00 00    	mov    %esi,0xf2(%eax)
40d3e7:	96                   	xchg   %eax,%esi
40d3e8:	e8 57 08 00 00       	call   0x40dc44
40d3ed:	50                   	push   %eax
40d3ee:	e8 25 77 ff ff       	call   0x404b18
40d3f3:	5e                   	pop    %esi
40d3f4:	c3                   	ret
40d3f5:	96                   	xchg   %eax,%esi
40d3f6:	e8 49 08 00 00       	call   0x40dc44
40d3fb:	50                   	push   %eax
40d3fc:	e8 1f 77 ff ff       	call   0x404b20
40d401:	5e                   	pop    %esi
40d402:	c3                   	ret
40d403:	90                   	nop
40d404:	53                   	push   %ebx
40d405:	57                   	push   %edi
40d406:	51                   	push   %ecx
40d407:	93                   	xchg   %eax,%ebx
40d408:	89 d7                	mov    %edx,%edi
40d40a:	c7 43 5c 8c 99 40 00 	movl   $0x40998c,0x5c(%ebx)
40d411:	8b 43 40             	mov    0x40(%ebx),%eax
40d414:	89 fa                	mov    %edi,%edx
40d416:	e8 69 7e ff ff       	call   0x405284
40d41b:	85 c0                	test   %eax,%eax
40d41d:	7d 13                	jge    0x40d432
40d41f:	8b 43 40             	mov    0x40(%ebx),%eax
40d422:	50                   	push   %eax
40d423:	89 fa                	mov    %edi,%edx
40d425:	e8 a6 7d ff ff       	call   0x4051d0
40d42a:	58                   	pop    %eax
40d42b:	5a                   	pop    %edx
40d42c:	52                   	push   %edx
40d42d:	e8 9e 7d ff ff       	call   0x4051d0
40d432:	8b 43 40             	mov    0x40(%ebx),%eax
40d435:	ff 15 40 61 42 00    	call   *0x426140
40d43b:	59                   	pop    %ecx
40d43c:	5f                   	pop    %edi
40d43d:	5b                   	pop    %ebx
40d43e:	c3                   	ret
40d43f:	90                   	nop
40d440:	f6 40 27 10          	testb  $0x10,0x27(%eax)
40d444:	0f 95 c6             	setne  %dh
40d447:	f6 40 37 03          	testb  $0x3,0x37(%eax)
40d44b:	0f 95 c2             	setne  %dl
40d44e:	08 f2                	or     %dh,%dl
40d450:	f6 40 36 08          	testb  $0x8,0x36(%eax)
40d454:	74 17                	je     0x40d46d
40d456:	8b 48 30             	mov    0x30(%eax),%ecx
40d459:	e3 12                	jecxz  0x40d46d
40d45b:	84 d2                	test   %dl,%dl
40d45d:	74 0e                	je     0x40d46d
40d45f:	91                   	xchg   %eax,%ecx
40d460:	50                   	push   %eax
40d461:	e8 46 e4 ff ff       	call   0x40b8ac
40d466:	58                   	pop    %eax
40d467:	e8 d4 ff ff ff       	call   0x40d440
40d46c:	92                   	xchg   %eax,%edx
40d46d:	92                   	xchg   %eax,%edx
40d46e:	c3                   	ret
40d46f:	90                   	nop
40d470:	0f be 05 58 64 42 00 	movsbl 0x426458,%eax
40d477:	fe c4                	inc    %ah
40d479:	75 58                	jne    0x40d4d3
40d47b:	e8 98 73 ff ff       	call   0x404818
40d480:	92                   	xchg   %eax,%edx
40d481:	31 c0                	xor    %eax,%eax
40d483:	85 d2                	test   %edx,%edx
40d485:	86 d6                	xchg   %dl,%dh
40d487:	7c 2b                	jl     0x40d4b4
40d489:	b0 04                	mov    $0x4,%al
40d48b:	66 81 fa 00 04       	cmp    $0x400,%dx
40d490:	74 3b                	je     0x40d4cd
40d492:	fe c0                	inc    %al
40d494:	66 81 ea 00 05       	sub    $0x500,%dx
40d499:	74 32                	je     0x40d4cd
40d49b:	fe c0                	inc    %al
40d49d:	66 4a                	dec    %dx
40d49f:	74 2c                	je     0x40d4cd
40d4a1:	fe c0                	inc    %al
40d4a3:	66 4a                	dec    %dx
40d4a5:	74 26                	je     0x40d4cd
40d4a7:	fe c0                	inc    %al
40d4a9:	66 81 fa fe 00       	cmp    $0xfe,%dx
40d4ae:	74 1d                	je     0x40d4cd
40d4b0:	fe c0                	inc    %al
40d4b2:	eb 19                	jmp    0x40d4cd
40d4b4:	80 fe 04             	cmp    $0x4,%dh
40d4b7:	72 14                	jb     0x40d4cd
40d4b9:	fe c0                	inc    %al
40d4bb:	66 81 fa 0a 04       	cmp    $0x40a,%dx
40d4c0:	72 0b                	jb     0x40d4cd
40d4c2:	fe c0                	inc    %al
40d4c4:	66 81 fa 5a 04       	cmp    $0x45a,%dx
40d4c9:	72 02                	jb     0x40d4cd
40d4cb:	fe c0                	inc    %al
40d4cd:	88 05 58 64 42 00    	mov    %al,0x426458
40d4d3:	c3                   	ret
40d4d4:	80 48 34 01          	orb    $0x1,0x34(%eax)
40d4d8:	8b 50 24             	mov    0x24(%eax),%edx
40d4db:	f6 40 38 01          	testb  $0x1,0x38(%eax)
40d4df:	75 03                	jne    0x40d4e4
40d4e1:	80 e2 f3             	and    $0xf3,%dl
40d4e4:	80 ce 2c             	or     $0x2c,%dh
40d4e7:	50                   	push   %eax
40d4e8:	e8 83 e2 ff ff       	call   0x40b770
40d4ed:	58                   	pop    %eax
40d4ee:	c3                   	ret
40d4ef:	90                   	nop
40d4f0:	63 6f 6d             	arpl   %ebp,0x6d(%edi)
40d4f3:	63 74 6c 33          	arpl   %esi,0x33(%esp,%ebp,2)
40d4f7:	32 00                	xor    (%eax),%al
40d4f9:	00 00                	add    %al,(%eax)
40d4fb:	00 49 6e             	add    %cl,0x6e(%ecx)
40d4fe:	69 74 43 6f 6d 6d 6f 	imul   $0x6e6f6d6d,0x6f(%ebx,%eax,2),%esi
40d505:	6e
40d506:	43                   	inc    %ebx
40d507:	6f                   	outsl  %ds:(%esi),(%dx)
40d508:	6e                   	outsb  %ds:(%esi),(%dx)
40d509:	74 72                	je     0x40d57d
40d50b:	6f                   	outsl  %ds:(%esi),(%dx)
40d50c:	6c                   	insb   (%dx),%es:(%edi)
40d50d:	73 45                	jae    0x40d554
40d50f:	78 00                	js     0x40d511
40d511:	00 00                	add    %al,(%eax)
40d513:	00 50 e8             	add    %dl,-0x18(%eax)
40d516:	0a 7b ff             	or     -0x1(%ebx),%bh
40d519:	ff 8b 05 f4 98 42    	decl   0x4298f405(%ebx)
40d51f:	00 85 c0 75 11 ff    	add    %al,-0xee8a40(%ebp)
40d525:	35 78 64 42 00       	xor    $0x426478,%eax
40d52a:	e8 ed 79 ff ff       	call   0x404f1c
40d52f:	89 05 f4 98 42 00    	mov    %eax,0x4298f4
40d535:	ff 35 7c 64 42 00    	push   0x42647c
40d53b:	50                   	push   %eax
40d53c:	e8 c7 72 ff ff       	call   0x404808
40d541:	91                   	xchg   %eax,%ecx
40d542:	5a                   	pop    %edx
40d543:	e3 08                	jecxz  0x40d54d
40d545:	52                   	push   %edx
40d546:	6a 08                	push   $0x8
40d548:	54                   	push   %esp
40d549:	ff d1                	call   *%ecx
40d54b:	59                   	pop    %ecx
40d54c:	59                   	pop    %ecx
40d54d:	c3                   	ret
40d54e:	8b c0                	mov    %eax,%eax
40d550:	50                   	push   %eax
40d551:	8d 40 4d             	lea    0x4d(%eax),%eax
40d554:	31 c9                	xor    %ecx,%ecx
40d556:	b1 20                	mov    $0x20,%cl
40d558:	50                   	push   %eax
40d559:	51                   	push   %ecx
40d55a:	52                   	push   %edx
40d55b:	e8 f4 83 ff ff       	call   0x405954
40d560:	5a                   	pop    %edx
40d561:	59                   	pop    %ecx
40d562:	58                   	pop    %eax
40d563:	74 0c                	je     0x40d571
40d565:	e8 f6 82 ff ff       	call   0x405860
40d56a:	58                   	pop    %eax
40d56b:	50                   	push   %eax
40d56c:	e8 7f cf ff ff       	call   0x40a4f0
40d571:	58                   	pop    %eax
40d572:	c3                   	ret
40d573:	90                   	nop
40d574:	56                   	push   %esi
40d575:	96                   	xchg   %eax,%esi
40d576:	e8 bd 7a ff ff       	call   0x405038
40d57b:	51                   	push   %ecx
40d57c:	52                   	push   %edx
40d57d:	92                   	xchg   %eax,%edx
40d57e:	e8 f9 83 ff ff       	call   0x40597c
40d583:	87 04 24             	xchg   %eax,(%esp)
40d586:	50                   	push   %eax
40d587:	6a 09                	push   $0x9
40d589:	56                   	push   %esi
40d58a:	e8 29 d2 ff ff       	call   0x40a7b8
40d58f:	ff 76 1c             	push   0x1c(%esi)
40d592:	e8 c5 79 ff ff       	call   0x404f5c
40d597:	5e                   	pop    %esi
40d598:	c3                   	ret
40d599:	8d 40 00             	lea    0x0(%eax),%eax
40d59c:	e8 8b 7a ff ff       	call   0x40502c
40d5a1:	56                   	push   %esi
40d5a2:	96                   	xchg   %eax,%esi
40d5a3:	31 d2                	xor    %edx,%edx
40d5a5:	85 f6                	test   %esi,%esi
40d5a7:	74 25                	je     0x40d5ce
40d5a9:	ac                   	lods   %ds:(%esi),%al
40d5aa:	3c 24                	cmp    $0x24,%al
40d5ac:	75 01                	jne    0x40d5af
40d5ae:	ac                   	lods   %ds:(%esi),%al
40d5af:	84 c0                	test   %al,%al
40d5b1:	74 1b                	je     0x40d5ce
40d5b3:	2c 30                	sub    $0x30,%al
40d5b5:	3c 09                	cmp    $0x9,%al
40d5b7:	76 0e                	jbe    0x40d5c7
40d5b9:	2c 11                	sub    $0x11,%al
40d5bb:	3c 05                	cmp    $0x5,%al
40d5bd:	76 06                	jbe    0x40d5c5
40d5bf:	2c 20                	sub    $0x20,%al
40d5c1:	3c 05                	cmp    $0x5,%al
40d5c3:	77 09                	ja     0x40d5ce
40d5c5:	04 0a                	add    $0xa,%al
40d5c7:	c1 e2 04             	shl    $0x4,%edx
40d5ca:	00 c2                	add    %al,%dl
40d5cc:	eb e0                	jmp    0x40d5ae
40d5ce:	92                   	xchg   %eax,%edx
40d5cf:	5e                   	pop    %esi
40d5d0:	c3                   	ret
40d5d1:	8d 40 00             	lea    0x0(%eax),%eax
40d5d4:	31 c9                	xor    %ecx,%ecx
40d5d6:	51                   	push   %ecx
40d5d7:	83 c4 f4             	add    $0xfffffff4,%esp
40d5da:	53                   	push   %ebx
40d5db:	8d 5c 24 13          	lea    0x13(%esp),%ebx
40d5df:	52                   	push   %edx
40d5e0:	39 c8                	cmp    %ecx,%eax
40d5e2:	9c                   	pushf
40d5e3:	7d 02                	jge    0x40d5e7
40d5e5:	f7 d8                	neg    %eax
40d5e7:	b1 0a                	mov    $0xa,%cl
40d5e9:	4b                   	dec    %ebx
40d5ea:	31 d2                	xor    %edx,%edx
40d5ec:	f7 f1                	div    %ecx
40d5ee:	80 c2 30             	add    $0x30,%dl
40d5f1:	88 13                	mov    %dl,(%ebx)
40d5f3:	85 c0                	test   %eax,%eax
40d5f5:	75 f2                	jne    0x40d5e9
40d5f7:	9d                   	popf
40d5f8:	7d 04                	jge    0x40d5fe
40d5fa:	4b                   	dec    %ebx
40d5fb:	c6 03 2d             	movb   $0x2d,(%ebx)
40d5fe:	58                   	pop    %eax
40d5ff:	89 da                	mov    %ebx,%edx
40d601:	e8 6a 62 ff ff       	call   0x403870
40d606:	5b                   	pop    %ebx
40d607:	83 c4 10             	add    $0x10,%esp
40d60a:	c3                   	ret
40d60b:	90                   	nop
40d60c:	55                   	push   %ebp
40d60d:	8b ec                	mov    %esp,%ebp
40d60f:	53                   	push   %ebx
40d610:	56                   	push   %esi
40d611:	57                   	push   %edi
40d612:	89 e3                	mov    %esp,%ebx
40d614:	89 c6                	mov    %eax,%esi
40d616:	b9 04 00 00 00       	mov    $0x4,%ecx
40d61b:	ba 6b 4d 47 54       	mov    $0x54474d6b,%edx
40d620:	dd 45 08             	fldl   0x8(%ebp)
40d623:	da 15 43 d6 40 00    	ficoml 0x40d643
40d629:	9b df e0             	fstsw  %ax
40d62c:	9e                   	sahf
40d62d:	72 21                	jb     0x40d650
40d62f:	da 35 43 d6 40 00    	fidivl 0x40d643
40d635:	dd 55 08             	fstl   0x8(%ebp)
40d638:	9b                   	fwait
40d639:	f6 c2 20             	test   $0x20,%dl
40d63c:	74 0d                	je     0x40d64b
40d63e:	80 e2 df             	and    $0xdf,%dl
40d641:	eb 0b                	jmp    0x40d64e
40d643:	00 04 00             	add    %al,(%eax,%eax,1)
40d646:	00 64 00 00          	add    %ah,0x0(%eax,%eax,1)
40d64a:	00 c1                	add    %al,%cl
40d64c:	ca 08 e2             	lret   $0xe208
40d64f:	d3 f6                	shl    %cl,%esi
40d651:	c2 20 74             	ret    $0x7420
40d654:	02 b2 00 b6 00 66    	add    0x6600b600(%edx),%dh
40d65a:	52                   	push   %edx
40d65b:	89 e7                	mov    %esp,%edi
40d65d:	d9 c0                	fld    %st(0)
40d65f:	e8 44 53 ff ff       	call   0x4029a8
40d664:	52                   	push   %edx
40d665:	50                   	push   %eax
40d666:	df 2c 24             	fildll (%esp)
40d669:	5a                   	pop    %edx