40818d:	40                   	inc    %eax
40818e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
408191:	5f                   	pop    %edi
408192:	5e                   	pop    %esi
408193:	33 cd                	xor    %ebp,%ecx
408195:	5b                   	pop    %ebx
408196:	e8 5a 0a 00 00       	call   0x408bf5
40819b:	c9                   	leave
40819c:	c3                   	ret
40819d:	cc                   	int3
40819e:	cc                   	int3
40819f:	cc                   	int3
4081a0:	56                   	push   %esi
4081a1:	6a 02                	push   $0x2
4081a3:	e8 76 30 00 00       	call   0x40b21e
4081a8:	e8 4a 05 00 00       	call   0x4086f7
4081ad:	50                   	push   %eax
4081ae:	e8 cf 39 00 00       	call   0x40bb82
4081b3:	e8 38 05 00 00       	call   0x4086f0
4081b8:	8b f0                	mov    %eax,%esi
4081ba:	e8 60 3b 00 00       	call   0x40bd1f
4081bf:	6a 01                	push   $0x1
4081c1:	89 30                	mov    %esi,(%eax)
4081c3:	e8 e1 02 00 00       	call   0x4084a9
4081c8:	83 c4 0c             	add    $0xc,%esp
4081cb:	5e                   	pop    %esi
4081cc:	84 c0                	test   %al,%al
4081ce:	74 73                	je     0x408243
4081d0:	db e2                	fnclex
4081d2:	e8 97 07 00 00       	call   0x40896e
4081d7:	68 a0 89 40 00       	push   $0x4089a0
4081dc:	e8 55 04 00 00       	call   0x408636
4081e1:	e8 0d 05 00 00       	call   0x4086f3
4081e6:	50                   	push   %eax
4081e7:	e8 d4 33 00 00       	call   0x40b5c0
4081ec:	59                   	pop    %ecx
4081ed:	59                   	pop    %ecx
4081ee:	85 c0                	test   %eax,%eax
4081f0:	75 51                	jne    0x408243
4081f2:	e8 06 05 00 00       	call   0x4086fd
4081f7:	e8 5b 05 00 00       	call   0x408757
4081fc:	85 c0                	test   %eax,%eax
4081fe:	74 0b                	je     0x40820b
408200:	68 f0 86 40 00       	push   $0x4086f0
408205:	e8 a8 30 00 00       	call   0x40b2b2
40820a:	59                   	pop    %ecx
40820b:	e8 f0 d5 ff ff       	call   0x405800
408210:	e8 eb d5 ff ff       	call   0x405800
408215:	e8 f9 04 00 00       	call   0x408713
40821a:	e8 d1 04 00 00       	call   0x4086f0
40821f:	50                   	push   %eax
408220:	e8 62 3a 00 00       	call   0x40bc87
408225:	59                   	pop    %ecx
408226:	e8 e5 04 00 00       	call   0x408710
40822b:	84 c0                	test   %al,%al
40822d:	74 05                	je     0x408234
40822f:	e8 8e 35 00 00       	call   0x40b7c2
408234:	e8 b7 04 00 00       	call   0x4086f0
408239:	e8 7d 06 00 00       	call   0x4088bb
40823e:	85 c0                	test   %eax,%eax
408240:	75 01                	jne    0x408243
408242:	c3                   	ret
408243:	6a 07                	push   $0x7
408245:	e8 25 05 00 00       	call   0x40876f
40824a:	cc                   	int3
40824b:	cc                   	int3
40824c:	cc                   	int3
40824d:	cc                   	int3
40824e:	cc                   	int3
40824f:	cc                   	int3
408250:	e8 e5 04 00 00       	call   0x40873a
408255:	33 c0                	xor    %eax,%eax
408257:	c3                   	ret
408258:	cc                   	int3
408259:	cc                   	int3
40825a:	cc                   	int3
40825b:	cc                   	int3
40825c:	cc                   	int3
40825d:	cc                   	int3
40825e:	cc                   	int3
40825f:	cc                   	int3
408260:	e8 9d 06 00 00       	call   0x408902
408265:	e8 86 04 00 00       	call   0x4086f0
40826a:	50                   	push   %eax
40826b:	e8 80 3a 00 00       	call   0x40bcf0
408270:	59                   	pop    %ecx
408271:	c3                   	ret
408272:	6a 14                	push   $0x14
408274:	68 a8 3c 42 00       	push   $0x423ca8
408279:	e8 52 07 00 00       	call   0x4089d0
40827e:	6a 01                	push   $0x1
408280:	e8 eb 01 00 00       	call   0x408470
408285:	59                   	pop    %ecx
408286:	84 c0                	test   %al,%al
408288:	0f 84 4a 01 00 00    	je     0x4083d8
40828e:	32 db                	xor    %bl,%bl
408290:	88 5d e7             	mov    %bl,-0x19(%ebp)
408293:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
408297:	e8 a2 01 00 00       	call   0x40843e
40829c:	88 45 dc             	mov    %al,-0x24(%ebp)
40829f:	a1 28 69 42 00       	mov    0x426928,%eax
4082a4:	33 c9                	xor    %ecx,%ecx
4082a6:	41                   	inc    %ecx
4082a7:	3b c1                	cmp    %ecx,%eax
4082a9:	0f 84 29 01 00 00    	je     0x4083d8
4082af:	85 c0                	test   %eax,%eax
4082b1:	75 49                	jne    0x4082fc
4082b3:	89 0d 28 69 42 00    	mov    %ecx,0x426928
4082b9:	68 88 c2 41 00       	push   $0x41c288
4082be:	68 68 c2 41 00       	push   $0x41c268
4082c3:	e8 97 35 00 00       	call   0x40b85f
4082c8:	59                   	pop    %ecx
4082c9:	59                   	pop    %ecx
4082ca:	85 c0                	test   %eax,%eax
4082cc:	74 11                	je     0x4082df
4082ce:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4082d5:	b8 ff 00 00 00       	mov    $0xff,%eax
4082da:	e9 e9 00 00 00       	jmp    0x4083c8
4082df:	68 64 c2 41 00       	push   $0x41c264
4082e4:	68 58 c2 41 00       	push   $0x41c258
4082e9:	e8 2c 35 00 00       	call   0x40b81a
4082ee:	59                   	pop    %ecx
4082ef:	59                   	pop    %ecx
4082f0:	c7 05 28 69 42 00 02 	movl   $0x2,0x426928
4082f7:	00 00 00
4082fa:	eb 05                	jmp    0x408301
4082fc:	8a d9                	mov    %cl,%bl
4082fe:	88 5d e7             	mov    %bl,-0x19(%ebp)
408301:	ff 75 dc             	push   -0x24(%ebp)
408304:	e8 bb 02 00 00       	call   0x4085c4
408309:	59                   	pop    %ecx
40830a:	e8 54 04 00 00       	call   0x408763
40830f:	8b f0                	mov    %eax,%esi
408311:	33 ff                	xor    %edi,%edi
408313:	39 3e                	cmp    %edi,(%esi)
408315:	74 1b                	je     0x408332
408317:	56                   	push   %esi
408318:	e8 13 02 00 00       	call   0x408530
40831d:	59                   	pop    %ecx
40831e:	84 c0                	test   %al,%al
408320:	74 10                	je     0x408332
408322:	8b 36                	mov    (%esi),%esi
408324:	57                   	push   %edi
408325:	6a 02                	push   $0x2
408327:	57                   	push   %edi
408328:	8b ce                	mov    %esi,%ecx
40832a:	ff 15 50 c2 41 00    	call   *0x41c250
408330:	ff d6                	call   *%esi
408332:	e8 32 04 00 00       	call   0x408769
408337:	8b f0                	mov    %eax,%esi
408339:	39 3e                	cmp    %edi,(%esi)
40833b:	74 13                	je     0x408350
40833d:	56                   	push   %esi
40833e:	e8 ed 01 00 00       	call   0x408530
408343:	59                   	pop    %ecx
408344:	84 c0                	test   %al,%al
408346:	74 08                	je     0x408350
408348:	ff 36                	push   (%esi)
40834a:	e8 f7 37 00 00       	call   0x40bb46
40834f:	59                   	pop    %ecx
408350:	e8 35 05 00 00       	call   0x40888a
408355:	0f b7 f0             	movzwl %ax,%esi
408358:	e8 6a 34 00 00       	call   0x40b7c7
40835d:	56                   	push   %esi
40835e:	50                   	push   %eax
40835f:	57                   	push   %edi
408360:	68 00 00 40 00       	push   $0x400000
408365:	e8 9f ad ff ff       	call   0x403109
40836a:	8b f0                	mov    %eax,%esi
40836c:	e8 4f 05 00 00       	call   0x4088c0
408371:	84 c0                	test   %al,%al
408373:	74 6a                	je     0x4083df
408375:	84 db                	test   %bl,%bl
408377:	75 05                	jne    0x40837e
408379:	e8 a3 37 00 00       	call   0x40bb21
40837e:	57                   	push   %edi
40837f:	6a 01                	push   $0x1
408381:	e8 5b 02 00 00       	call   0x4085e1
408386:	59                   	pop    %ecx
408387:	59                   	pop    %ecx
408388:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
40838f:	8b c6                	mov    %esi,%eax
408391:	eb 35                	jmp    0x4083c8
408393:	8b 4d ec             	mov    -0x14(%ebp),%ecx
408396:	8b 01                	mov    (%ecx),%eax
408398:	8b 00                	mov    (%eax),%eax
40839a:	89 45 e0             	mov    %eax,-0x20(%ebp)
40839d:	51                   	push   %ecx
40839e:	50                   	push   %eax
40839f:	e8 1c 2d 00 00       	call   0x40b0c0
4083a4:	59                   	pop    %ecx
4083a5:	59                   	pop    %ecx
4083a6:	c3                   	ret
4083a7:	8b 65 e8             	mov    -0x18(%ebp),%esp
4083aa:	e8 11 05 00 00       	call   0x4088c0
4083af:	84 c0                	test   %al,%al
4083b1:	74 32                	je     0x4083e5
4083b3:	80 7d e7 00          	cmpb   $0x0,-0x19(%ebp)
4083b7:	75 05                	jne    0x4083be
4083b9:	e8 54 37 00 00       	call   0x40bb12
4083be:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4083c5:	8b 45 e0             	mov    -0x20(%ebp),%eax
4083c8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4083cb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4083d2:	59                   	pop    %ecx
4083d3:	5f                   	pop    %edi
4083d4:	5e                   	pop    %esi
4083d5:	5b                   	pop    %ebx
4083d6:	c9                   	leave
4083d7:	c3                   	ret
4083d8:	6a 07                	push   $0x7
4083da:	e8 90 03 00 00       	call   0x40876f
4083df:	56                   	push   %esi
4083e0:	e8 87 37 00 00       	call   0x40bb6c
4083e5:	ff 75 e0             	push   -0x20(%ebp)
4083e8:	e8 43 37 00 00       	call   0x40bb30
4083ed:	cc                   	int3
4083ee:	cc                   	int3
4083ef:	cc                   	int3
4083f0:	e8 a3 02 00 00       	call   0x408698
4083f5:	e9 78 fe ff ff       	jmp    0x408272
4083fa:	55                   	push   %ebp
4083fb:	8b ec                	mov    %esp,%ebp
4083fd:	8b 45 08             	mov    0x8(%ebp),%eax
408400:	56                   	push   %esi
408401:	8b 48 3c             	mov    0x3c(%eax),%ecx
408404:	03 c8                	add    %eax,%ecx
408406:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
40840a:	8d 51 18             	lea    0x18(%ecx),%edx
40840d:	03 d0                	add    %eax,%edx
40840f:	0f b7 41 06          	movzwl 0x6(%ecx),%eax
408413:	6b f0 28             	imul   $0x28,%eax,%esi
408416:	03 f2                	add    %edx,%esi
408418:	3b d6                	cmp    %esi,%edx
40841a:	74 19                	je     0x408435
40841c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40841f:	3b 4a 0c             	cmp    0xc(%edx),%ecx
408422:	72 0a                	jb     0x40842e
408424:	8b 42 08             	mov    0x8(%edx),%eax
408427:	03 42 0c             	add    0xc(%edx),%eax
40842a:	3b c8                	cmp    %eax,%ecx
40842c:	72 0c                	jb     0x40843a
40842e:	83 c2 28             	add    $0x28,%edx
408431:	3b d6                	cmp    %esi,%edx
408433:	75 ea                	jne    0x40841f
408435:	33 c0                	xor    %eax,%eax
408437:	5e                   	pop    %esi
408438:	5d                   	pop    %ebp
408439:	c3                   	ret
40843a:	8b c2                	mov    %edx,%eax
40843c:	eb f9                	jmp    0x408437
40843e:	56                   	push   %esi
40843f:	e8 a5 07 00 00       	call   0x408be9
408444:	85 c0                	test   %eax,%eax
408446:	74 20                	je     0x408468
408448:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
40844e:	be 2c 69 42 00       	mov    $0x42692c,%esi
408453:	8b 50 04             	mov    0x4(%eax),%edx
408456:	eb 04                	jmp    0x40845c
408458:	3b d0                	cmp    %eax,%edx
40845a:	74 10                	je     0x40846c
40845c:	33 c0                	xor    %eax,%eax
40845e:	8b ca                	mov    %edx,%ecx
408460:	f0 0f b1 0e          	lock cmpxchg %ecx,(%esi)
408464:	85 c0                	test   %eax,%eax
408466:	75 f0                	jne    0x408458
408468:	32 c0                	xor    %al,%al
40846a:	5e                   	pop    %esi
40846b:	c3                   	ret
40846c:	b0 01                	mov    $0x1,%al
40846e:	5e                   	pop    %esi
40846f:	c3                   	ret
408470:	55                   	push   %ebp
408471:	8b ec                	mov    %esp,%ebp
408473:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
408477:	75 07                	jne    0x408480
408479:	c6 05 30 69 42 00 01 	movb   $0x1,0x426930
408480:	e8 90 05 00 00       	call   0x408a15
408485:	e8 47 0a 00 00       	call   0x408ed1
40848a:	84 c0                	test   %al,%al
40848c:	75 04                	jne    0x408492
40848e:	32 c0                	xor    %al,%al
408490:	5d                   	pop    %ebp
408491:	c3                   	ret
408492:	e8 07 3d 00 00       	call   0x40c19e
408497:	84 c0                	test   %al,%al
408499:	75 0a                	jne    0x4084a5
40849b:	6a 00                	push   $0x0
40849d:	e8 4e 0a 00 00       	call   0x408ef0
4084a2:	59                   	pop    %ecx
4084a3:	eb e9                	jmp    0x40848e
4084a5:	b0 01                	mov    $0x1,%al
4084a7:	5d                   	pop    %ebp
4084a8:	c3                   	ret
4084a9:	55                   	push   %ebp
4084aa:	8b ec                	mov    %esp,%ebp
4084ac:	80 3d 31 69 42 00 00 	cmpb   $0x0,0x426931
4084b3:	74 04                	je     0x4084b9
4084b5:	b0 01                	mov    $0x1,%al
4084b7:	5d                   	pop    %ebp
4084b8:	c3                   	ret
4084b9:	56                   	push   %esi
4084ba:	8b 75 08             	mov    0x8(%ebp),%esi
4084bd:	85 f6                	test   %esi,%esi
4084bf:	74 05                	je     0x4084c6
4084c1:	83 fe 01             	cmp    $0x1,%esi
4084c4:	75 62                	jne    0x408528
4084c6:	e8 1e 07 00 00       	call   0x408be9
4084cb:	85 c0                	test   %eax,%eax
4084cd:	74 26                	je     0x4084f5
4084cf:	85 f6                	test   %esi,%esi
4084d1:	75 22                	jne    0x4084f5
4084d3:	68 34 69 42 00       	push   $0x426934
4084d8:	e8 44 3b 00 00       	call   0x40c021
4084dd:	59                   	pop    %ecx
4084de:	85 c0                	test   %eax,%eax
4084e0:	75 0f                	jne    0x4084f1
4084e2:	68 40 69 42 00       	push   $0x426940
4084e7:	e8 35 3b 00 00       	call   0x40c021
4084ec:	59                   	pop    %ecx
4084ed:	85 c0                	test   %eax,%eax
4084ef:	74 2b                	je     0x40851c
4084f1:	32 c0                	xor    %al,%al
4084f3:	eb 30                	jmp    0x408525
4084f5:	83 c9 ff             	or     $0xffffffff,%ecx
4084f8:	89 0d 34 69 42 00    	mov    %ecx,0x426934
4084fe:	89 0d 38 69 42 00    	mov    %ecx,0x426938
408504:	89 0d 3c 69 42 00    	mov    %ecx,0x42693c
40850a:	89 0d 40 69 42 00    	mov    %ecx,0x426940
408510:	89 0d 44 69 42 00    	mov    %ecx,0x426944
408516:	89 0d 48 69 42 00    	mov    %ecx,0x426948
40851c:	c6 05 31 69 42 00 01 	movb   $0x1,0x426931
408523:	b0 01                	mov    $0x1,%al
408525:	5e                   	pop    %esi
408526:	5d                   	pop    %ebp
408527:	c3                   	ret
408528:	6a 05                	push   $0x5
40852a:	e8 40 02 00 00       	call   0x40876f
40852f:	cc                   	int3
408530:	6a 08                	push   $0x8
408532:	68 c8 3c 42 00       	push   $0x423cc8
408537:	e8 94 04 00 00       	call   0x4089d0
40853c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
408540:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
408545:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
40854c:	75 5d                	jne    0x4085ab
40854e:	a1 3c 00 40 00       	mov    0x40003c,%eax
408553:	81 b8 00 00 40 00 50 	cmpl   $0x4550,0x400000(%eax)
40855a:	45 00 00
40855d:	75 4c                	jne    0x4085ab