40a2ab:	40                   	inc    %eax
40a2ac:	00 a9 a4 40 00 89    	add    %ch,-0x76ffbf5c(%ecx)
40a2b2:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40a2b3:	40                   	inc    %eax
40a2b4:	00 dd                	add    %bl,%ch
40a2b6:	a2 40 00 dd a2       	mov    %al,0xa2dd0040
40a2bb:	40                   	inc    %eax
40a2bc:	00 dd                	add    %bl,%ch
40a2be:	a2 40 00 42 a4       	mov    %al,0xa4420040
40a2c3:	40                   	inc    %eax
40a2c4:	00 6d a4             	add    %ch,-0x5c(%ebp)
40a2c7:	40                   	inc    %eax
40a2c8:	00 c3                	add    %al,%bl
40a2ca:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40a2cb:	40                   	inc    %eax
40a2cc:	00 10                	add    %dl,(%eax)
40a2ce:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40a2cf:	40                   	inc    %eax
40a2d0:	00 dd                	add    %bl,%ch
40a2d2:	a2 40 00 49 a4       	mov    %al,0xa4490040
40a2d7:	40                   	inc    %eax
40a2d8:	00 f4                	add    %dh,%ah
40a2da:	a2 40 00 31 c0       	mov    %al,0xc0310040
40a2df:	e8 58 02 00 00       	call   0x40a53c
40a2e4:	8b 55 e8             	mov    -0x18(%ebp),%edx
40a2e7:	8b 4d d8             	mov    -0x28(%ebp),%ecx
40a2ea:	29 d1                	sub    %edx,%ecx
40a2ec:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a2ef:	e8 dc fd ff ff       	call   0x40a0d0
40a2f4:	8d 5d d0             	lea    -0x30(%ebp),%ebx
40a2f7:	8b 10                	mov    (%eax),%edx
40a2f9:	89 13                	mov    %edx,(%ebx)
40a2fb:	8b 50 04             	mov    0x4(%eax),%edx
40a2fe:	89 53 04             	mov    %edx,0x4(%ebx)
40a301:	80 f9 44             	cmp    $0x44,%cl
40a304:	74 11                	je     0x40a317
40a306:	80 f9 55             	cmp    $0x55,%cl
40a309:	74 2a                	je     0x40a335
40a30b:	80 f9 58             	cmp    $0x58,%cl
40a30e:	75 cd                	jne    0x40a2dd
40a310:	b9 10 00 00 00       	mov    $0x10,%ecx
40a315:	eb 23                	jmp    0x40a33a
40a317:	f7 43 04 00 00 00 80 	testl  $0x80000000,0x4(%ebx)
40a31e:	74 15                	je     0x40a335
40a320:	f7 1b                	negl   (%ebx)
40a322:	83 53 04 00          	adcl   $0x0,0x4(%ebx)
40a326:	f7 5b 04             	negl   0x4(%ebx)
40a329:	e8 07 00 00 00       	call   0x40a335
40a32e:	b0 2d                	mov    $0x2d,%al
40a330:	41                   	inc    %ecx
40a331:	4e                   	dec    %esi
40a332:	88 06                	mov    %al,(%esi)
40a334:	c3                   	ret
40a335:	b9 0a 00 00 00       	mov    $0xa,%ecx
40a33a:	8d 75 af             	lea    -0x51(%ebp),%esi
40a33d:	53                   	push   %ebx
40a33e:	51                   	push   %ecx
40a33f:	6a 00                	push   $0x0
40a341:	51                   	push   %ecx
40a342:	8b 03                	mov    (%ebx),%eax
40a344:	8b 53 04             	mov    0x4(%ebx),%edx
40a347:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a34a:	e8 9d b8 ff ff       	call   0x405bec
40a34f:	59                   	pop    %ecx
40a350:	5b                   	pop    %ebx
40a351:	92                   	xchg   %eax,%edx
40a352:	80 c2 30             	add    $0x30,%dl
40a355:	80 fa 3a             	cmp    $0x3a,%dl
40a358:	72 03                	jb     0x40a35d
40a35a:	80 c2 07             	add    $0x7,%dl
40a35d:	4e                   	dec    %esi
40a35e:	88 16                	mov    %dl,(%esi)
40a360:	53                   	push   %ebx
40a361:	51                   	push   %ecx
40a362:	6a 00                	push   $0x0
40a364:	51                   	push   %ecx
40a365:	8b 03                	mov    (%ebx),%eax
40a367:	8b 53 04             	mov    0x4(%ebx),%edx
40a36a:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a36d:	e8 b2 b7 ff ff       	call   0x405b24
40a372:	59                   	pop    %ecx
40a373:	5b                   	pop    %ebx
40a374:	89 03                	mov    %eax,(%ebx)
40a376:	89 53 04             	mov    %edx,0x4(%ebx)
40a379:	09 d0                	or     %edx,%eax
40a37b:	75 c0                	jne    0x40a33d
40a37d:	8d 4d af             	lea    -0x51(%ebp),%ecx
40a380:	29 f1                	sub    %esi,%ecx
40a382:	8b 55 dc             	mov    -0x24(%ebp),%edx
40a385:	83 fa 10             	cmp    $0x10,%edx
40a388:	76 01                	jbe    0x40a38b
40a38a:	c3                   	ret
40a38b:	29 ca                	sub    %ecx,%edx
40a38d:	76 0a                	jbe    0x40a399
40a38f:	01 d1                	add    %edx,%ecx
40a391:	b0 30                	mov    $0x30,%al
40a393:	4e                   	dec    %esi
40a394:	88 06                	mov    %al,(%esi)
40a396:	4a                   	dec    %edx
40a397:	75 fa                	jne    0x40a393
40a399:	c3                   	ret
40a39a:	80 f9 44             	cmp    $0x44,%cl
40a39d:	74 15                	je     0x40a3b4
40a39f:	80 f9 55             	cmp    $0x55,%cl
40a3a2:	74 22                	je     0x40a3c6
40a3a4:	80 f9 58             	cmp    $0x58,%cl
40a3a7:	0f 85 30 ff ff ff    	jne    0x40a2dd
40a3ad:	b9 10 00 00 00       	mov    $0x10,%ecx
40a3b2:	eb 17                	jmp    0x40a3cb
40a3b4:	09 c0                	or     %eax,%eax
40a3b6:	79 0e                	jns    0x40a3c6
40a3b8:	f7 d8                	neg    %eax
40a3ba:	e8 07 00 00 00       	call   0x40a3c6
40a3bf:	b0 2d                	mov    $0x2d,%al
40a3c1:	41                   	inc    %ecx
40a3c2:	4e                   	dec    %esi
40a3c3:	88 06                	mov    %al,(%esi)
40a3c5:	c3                   	ret
40a3c6:	b9 0a 00 00 00       	mov    $0xa,%ecx
40a3cb:	8d 75 9f             	lea    -0x61(%ebp),%esi
40a3ce:	31 d2                	xor    %edx,%edx
40a3d0:	f7 f1                	div    %ecx
40a3d2:	80 c2 30             	add    $0x30,%dl
40a3d5:	80 fa 3a             	cmp    $0x3a,%dl
40a3d8:	72 03                	jb     0x40a3dd
40a3da:	80 c2 07             	add    $0x7,%dl
40a3dd:	4e                   	dec    %esi
40a3de:	88 16                	mov    %dl,(%esi)
40a3e0:	09 c0                	or     %eax,%eax
40a3e2:	75 ea                	jne    0x40a3ce
40a3e4:	8d 4d 9f             	lea    -0x61(%ebp),%ecx
40a3e7:	29 f1                	sub    %esi,%ecx
40a3e9:	8b 55 dc             	mov    -0x24(%ebp),%edx
40a3ec:	83 fa 10             	cmp    $0x10,%edx
40a3ef:	76 01                	jbe    0x40a3f2
40a3f1:	c3                   	ret
40a3f2:	29 ca                	sub    %ecx,%edx
40a3f4:	76 0a                	jbe    0x40a400
40a3f6:	01 d1                	add    %edx,%ecx
40a3f8:	b0 30                	mov    $0x30,%al
40a3fa:	4e                   	dec    %esi
40a3fb:	88 06                	mov    %al,(%esi)
40a3fd:	4a                   	dec    %edx
40a3fe:	75 fa                	jne    0x40a3fa
40a400:	c3                   	ret
40a401:	80 f9 53             	cmp    $0x53,%cl
40a404:	0f 85 d3 fe ff ff    	jne    0x40a2dd
40a40a:	b9 01 00 00 00       	mov    $0x1,%ecx
40a40f:	c3                   	ret
40a410:	80 f9 53             	cmp    $0x53,%cl
40a413:	0f 85 c4 fe ff ff    	jne    0x40a2dd
40a419:	66 83 38 01          	cmpw   $0x1,(%eax)
40a41d:	76 0f                	jbe    0x40a42e
40a41f:	89 c2                	mov    %eax,%edx
40a421:	8d 45 f0             	lea    -0x10(%ebp),%eax
40a424:	e8 ff fc ff ff       	call   0x40a128
40a429:	8b 75 f0             	mov    -0x10(%ebp),%esi
40a42c:	eb 4a                	jmp    0x40a478
40a42e:	31 c9                	xor    %ecx,%ecx
40a430:	c3                   	ret
40a431:	80 f9 53             	cmp    $0x53,%cl
40a434:	0f 85 a3 fe ff ff    	jne    0x40a2dd
40a43a:	89 c6                	mov    %eax,%esi
40a43c:	ac                   	lods   %ds:(%esi),%al
40a43d:	0f b6 c8             	movzbl %al,%ecx
40a440:	eb 3d                	jmp    0x40a47f
40a442:	be 88 4a 40 00       	mov    $0x404a88,%esi
40a447:	eb 05                	jmp    0x40a44e
40a449:	be e8 4a 40 00       	mov    $0x404ae8,%esi
40a44e:	03 75 fc             	add    -0x4(%ebp),%esi
40a451:	80 f9 53             	cmp    $0x53,%cl
40a454:	0f 85 83 fe ff ff    	jne    0x40a2dd
40a45a:	89 c2                	mov    %eax,%edx
40a45c:	8d 45 ec             	lea    -0x14(%ebp),%eax
40a45f:	53                   	push   %ebx
40a460:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a463:	ff d6                	call   *%esi
40a465:	5b                   	pop    %ebx
40a466:	8b 75 ec             	mov    -0x14(%ebp),%esi
40a469:	89 f0                	mov    %esi,%eax
40a46b:	eb 0b                	jmp    0x40a478
40a46d:	80 f9 53             	cmp    $0x53,%cl
40a470:	0f 85 67 fe ff ff    	jne    0x40a2dd
40a476:	89 c6                	mov    %eax,%esi
40a478:	09 f6                	or     %esi,%esi
40a47a:	74 b2                	je     0x40a42e
40a47c:	8b 4e fc             	mov    -0x4(%esi),%ecx
40a47f:	3b 4d dc             	cmp    -0x24(%ebp),%ecx
40a482:	77 01                	ja     0x40a485
40a484:	c3                   	ret
40a485:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40a488:	c3                   	ret
40a489:	80 f9 53             	cmp    $0x53,%cl
40a48c:	0f 85 4b fe ff ff    	jne    0x40a2dd
40a492:	89 c6                	mov    %eax,%esi
40a494:	57                   	push   %edi
40a495:	89 c7                	mov    %eax,%edi
40a497:	32 c0                	xor    %al,%al
40a499:	8b 4d dc             	mov    -0x24(%ebp),%ecx
40a49c:	e3 05                	jecxz  0x40a4a3
40a49e:	f2 ae                	repnz scas %es:(%edi),%al
40a4a0:	75 01                	jne    0x40a4a3
40a4a2:	4f                   	dec    %edi
40a4a3:	89 f9                	mov    %edi,%ecx
40a4a5:	29 f1                	sub    %esi,%ecx
40a4a7:	5f                   	pop    %edi
40a4a8:	c3                   	ret
40a4a9:	80 f9 50             	cmp    $0x50,%cl
40a4ac:	0f 85 2b fe ff ff    	jne    0x40a2dd
40a4b2:	c7 45 dc 08 00 00 00 	movl   $0x8,-0x24(%ebp)
40a4b9:	b9 10 00 00 00       	mov    $0x10,%ecx
40a4be:	e9 08 ff ff ff       	jmp    0x40a3cb
40a4c3:	b7 01                	mov    $0x1,%bh
40a4c5:	eb 02                	jmp    0x40a4c9
40a4c7:	b7 00                	mov    $0x0,%bh
40a4c9:	89 c6                	mov    %eax,%esi
40a4cb:	b3 00                	mov    $0x0,%bl
40a4cd:	80 f9 47             	cmp    $0x47,%cl
40a4d0:	74 3f                	je     0x40a511
40a4d2:	b3 01                	mov    $0x1,%bl
40a4d4:	80 f9 45             	cmp    $0x45,%cl
40a4d7:	74 38                	je     0x40a511
40a4d9:	b3 02                	mov    $0x2,%bl
40a4db:	80 f9 46             	cmp    $0x46,%cl
40a4de:	74 12                	je     0x40a4f2
40a4e0:	b3 03                	mov    $0x3,%bl
40a4e2:	80 f9 4e             	cmp    $0x4e,%cl
40a4e5:	74 0b                	je     0x40a4f2
40a4e7:	80 f9 4d             	cmp    $0x4d,%cl
40a4ea:	0f 85 ed fd ff ff    	jne    0x40a2dd
40a4f0:	b3 04                	mov    $0x4,%bl
40a4f2:	b8 12 00 00 00       	mov    $0x12,%eax
40a4f7:	8b 55 dc             	mov    -0x24(%ebp),%edx
40a4fa:	39 c2                	cmp    %eax,%edx
40a4fc:	76 25                	jbe    0x40a523
40a4fe:	ba 02 00 00 00       	mov    $0x2,%edx
40a503:	80 f9 4d             	cmp    $0x4d,%cl
40a506:	75 1b                	jne    0x40a523
40a508:	0f b6 15 3c 87 6a 00 	movzbl 0x6a873c,%edx
40a50f:	eb 12                	jmp    0x40a523
40a511:	8b 45 dc             	mov    -0x24(%ebp),%eax
40a514:	ba 03 00 00 00       	mov    $0x3,%edx
40a519:	83 f8 12             	cmp    $0x12,%eax
40a51c:	76 05                	jbe    0x40a523
40a51e:	b8 0f 00 00 00       	mov    $0xf,%eax
40a523:	53                   	push   %ebx
40a524:	50                   	push   %eax
40a525:	52                   	push   %edx
40a526:	8d 45 8f             	lea    -0x71(%ebp),%eax
40a529:	89 f2                	mov    %esi,%edx
40a52b:	0f b6 cf             	movzbl %bh,%ecx
40a52e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a531:	e8 be 01 00 00       	call   0x40a6f4
40a536:	89 c1                	mov    %eax,%ecx
40a538:	8d 75 8f             	lea    -0x71(%ebp),%esi
40a53b:	c3                   	ret
40a53c:	53                   	push   %ebx
40a53d:	50                   	push   %eax
40a53e:	8d 45 ec             	lea    -0x14(%ebp),%eax
40a541:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40a544:	e8 1f a3 ff ff       	call   0x404868
40a549:	58                   	pop    %eax
40a54a:	5b                   	pop    %ebx
40a54b:	c3                   	ret
40a54c:	e8 eb ff ff ff       	call   0x40a53c
40a551:	5f                   	pop    %edi
40a552:	5e                   	pop    %esi
40a553:	5b                   	pop    %ebx
40a554:	5b                   	pop    %ebx
40a555:	8b e5                	mov    %ebp,%esp
40a557:	5d                   	pop    %ebp
40a558:	c2 0c 00             	ret    $0xc
40a55b:	90                   	nop
40a55c:	55                   	push   %ebp
40a55d:	8b ec                	mov    %esp,%ebp
40a55f:	53                   	push   %ebx
40a560:	56                   	push   %esi
40a561:	57                   	push   %edi
40a562:	8b f9                	mov    %ecx,%edi
40a564:	8b f2                	mov    %edx,%esi
40a566:	8b d8                	mov    %eax,%ebx
40a568:	85 db                	test   %ebx,%ebx
40a56a:	74 27                	je     0x40a593
40a56c:	85 f6                	test   %esi,%esi
40a56e:	74 23                	je     0x40a593
40a570:	8b c6                	mov    %esi,%eax
40a572:	e8 79 f8 ff ff       	call   0x409df0
40a577:	50                   	push   %eax
40a578:	57                   	push   %edi
40a579:	8b 45 08             	mov    0x8(%ebp),%eax
40a57c:	50                   	push   %eax
40a57d:	8b ce                	mov    %esi,%ecx
40a57f:	8b c3                	mov    %ebx,%eax
40a581:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
40a586:	e8 bd fb ff ff       	call   0x40a148
40a58b:	c6 04 03 00          	movb   $0x0,(%ebx,%eax,1)
40a58f:	8b c3                	mov    %ebx,%eax
40a591:	eb 02                	jmp    0x40a595
40a593:	33 c0                	xor    %eax,%eax
40a595:	5f                   	pop    %edi
40a596:	5e                   	pop    %esi
40a597:	5b                   	pop    %ebx
40a598:	5d                   	pop    %ebp
40a599:	c2 04 00             	ret    $0x4
40a59c:	55                   	push   %ebp
40a59d:	8b ec                	mov    %esp,%ebp
40a59f:	53                   	push   %ebx
40a5a0:	56                   	push   %esi
40a5a1:	57                   	push   %edi
40a5a2:	8b f1                	mov    %ecx,%esi
40a5a4:	8b fa                	mov    %edx,%edi
40a5a6:	8b d8                	mov    %eax,%ebx
40a5a8:	85 db                	test   %ebx,%ebx
40a5aa:	74 27                	je     0x40a5d3
40a5ac:	85 f6                	test   %esi,%esi
40a5ae:	74 23                	je     0x40a5d3
40a5b0:	8b c6                	mov    %esi,%eax
40a5b2:	e8 39 f8 ff ff       	call   0x409df0
40a5b7:	50                   	push   %eax
40a5b8:	8b 45 0c             	mov    0xc(%ebp),%eax
40a5bb:	50                   	push   %eax
40a5bc:	8b 45 08             	mov    0x8(%ebp),%eax
40a5bf:	50                   	push   %eax
40a5c0:	8b ce                	mov    %esi,%ecx
40a5c2:	8b c3                	mov    %ebx,%eax
40a5c4:	8b d7                	mov    %edi,%edx
40a5c6:	e8 7d fb ff ff       	call   0x40a148
40a5cb:	c6 04 03 00          	movb   $0x0,(%ebx,%eax,1)
40a5cf:	8b c3                	mov    %ebx,%eax
40a5d1:	eb 02                	jmp    0x40a5d5
40a5d3:	33 c0                	xor    %eax,%eax
40a5d5:	5f                   	pop    %edi
40a5d6:	5e                   	pop    %esi
40a5d7:	5b                   	pop    %ebx
40a5d8:	5d                   	pop    %ebp
40a5d9:	c2 08 00             	ret    $0x8
40a5dc:	55                   	push   %ebp
40a5dd:	8b ec                	mov    %esp,%ebp
40a5df:	51                   	push   %ecx
40a5e0:	8b 4d 08             	mov    0x8(%ebp),%ecx
40a5e3:	91                   	xchg   %eax,%ecx
40a5e4:	87 d1                	xchg   %edx,%ecx
40a5e6:	e8 05 00 00 00       	call   0x40a5f0
40a5eb:	5d                   	pop    %ebp
40a5ec:	c2 04 00             	ret    $0x4
40a5ef:	90                   	nop
40a5f0:	55                   	push   %ebp
40a5f1:	8b ec                	mov    %esp,%ebp
40a5f3:	81 c4 04 f0 ff ff    	add    $0xfffff004,%esp
40a5f9:	50                   	push   %eax