40b24d:	ff 75 0c             	push   0xc(%ebp)
40b250:	d1 f9                	sar    $1,%ecx
40b252:	8d 04 4a             	lea    (%edx,%ecx,2),%eax
40b255:	8b ce                	mov    %esi,%ecx
40b257:	50                   	push   %eax
40b258:	52                   	push   %edx
40b259:	e8 48 a6 ff ff       	call   0x4058a6
40b25e:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b262:	8b c6                	mov    %esi,%eax
40b264:	e8 aa 47 03 00       	call   0x43fa13
40b269:	c2 08 00             	ret    $0x8
40b26c:	56                   	push   %esi
40b26d:	57                   	push   %edi
40b26e:	8b f9                	mov    %ecx,%edi
40b270:	6a 08                	push   $0x8
40b272:	c7 07 e0 59 49 00    	movl   $0x4959e0,(%edi)
40b278:	e8 26 40 03 00       	call   0x43f2a3
40b27d:	8b f0                	mov    %eax,%esi
40b27f:	59                   	pop    %ecx
40b280:	85 f6                	test   %esi,%esi
40b282:	74 0d                	je     0x40b291
40b284:	6a 01                	push   $0x1
40b286:	e8 ad b6 01 00       	call   0x426938
40b28b:	59                   	pop    %ecx
40b28c:	89 46 04             	mov    %eax,0x4(%esi)
40b28f:	eb 02                	jmp    0x40b293
40b291:	33 f6                	xor    %esi,%esi
40b293:	8b cf                	mov    %edi,%ecx
40b295:	89 77 34             	mov    %esi,0x34(%edi)
40b298:	e8 7e fb 00 00       	call   0x41ae1b
40b29d:	8b c7                	mov    %edi,%eax
40b29f:	5f                   	pop    %edi
40b2a0:	5e                   	pop    %esi
40b2a1:	c3                   	ret
40b2a2:	55                   	push   %ebp
40b2a3:	8b ec                	mov    %esp,%ebp
40b2a5:	51                   	push   %ecx
40b2a6:	33 c0                	xor    %eax,%eax
40b2a8:	56                   	push   %esi
40b2a9:	8b f1                	mov    %ecx,%esi
40b2ab:	88 45 fc             	mov    %al,-0x4(%ebp)
40b2ae:	ff 75 fc             	push   -0x4(%ebp)
40b2b1:	ff 75 08             	push   0x8(%ebp)
40b2b4:	89 46 10             	mov    %eax,0x10(%esi)
40b2b7:	89 46 14             	mov    %eax,0x14(%esi)
40b2ba:	e8 8f af 00 00       	call   0x41624e
40b2bf:	8b c6                	mov    %esi,%eax
40b2c1:	5e                   	pop    %esi
40b2c2:	c9                   	leave
40b2c3:	c2 04 00             	ret    $0x4
40b2c6:	55                   	push   %ebp
40b2c7:	8b ec                	mov    %esp,%ebp
40b2c9:	56                   	push   %esi
40b2ca:	ff 75 08             	push   0x8(%ebp)
40b2cd:	8b f1                	mov    %ecx,%esi
40b2cf:	83 66 10 00          	andl   $0x0,0x10(%esi)
40b2d3:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
40b2da:	c6 06 00             	movb   $0x0,(%esi)
40b2dd:	e8 a7 44 01 00       	call   0x41f789
40b2e2:	8b c6                	mov    %esi,%eax
40b2e4:	5e                   	pop    %esi
40b2e5:	5d                   	pop    %ebp
40b2e6:	c2 04 00             	ret    $0x4
40b2e9:	55                   	push   %ebp
40b2ea:	8b ec                	mov    %esp,%ebp
40b2ec:	56                   	push   %esi
40b2ed:	ff 75 0c             	push   0xc(%ebp)
40b2f0:	8b f1                	mov    %ecx,%esi
40b2f2:	ff 75 08             	push   0x8(%ebp)
40b2f5:	83 66 10 00          	andl   $0x0,0x10(%esi)
40b2f9:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
40b300:	c6 06 00             	movb   $0x0,(%esi)
40b303:	e8 a2 44 01 00       	call   0x41f7aa
40b308:	8b c6                	mov    %esi,%eax
40b30a:	5e                   	pop    %esi
40b30b:	5d                   	pop    %ebp
40b30c:	c2 08 00             	ret    $0x8
40b30f:	55                   	push   %ebp
40b310:	8b ec                	mov    %esp,%ebp
40b312:	51                   	push   %ecx
40b313:	33 c0                	xor    %eax,%eax
40b315:	56                   	push   %esi
40b316:	8b f1                	mov    %ecx,%esi
40b318:	88 45 fc             	mov    %al,-0x4(%ebp)
40b31b:	ff 75 fc             	push   -0x4(%ebp)
40b31e:	ff 75 08             	push   0x8(%ebp)
40b321:	89 46 10             	mov    %eax,0x10(%esi)
40b324:	89 46 14             	mov    %eax,0x14(%esi)
40b327:	e8 72 af 00 00       	call   0x41629e
40b32c:	8b c6                	mov    %esi,%eax
40b32e:	5e                   	pop    %esi
40b32f:	c9                   	leave
40b330:	c2 04 00             	ret    $0x4
40b333:	55                   	push   %ebp
40b334:	8b ec                	mov    %esp,%ebp
40b336:	56                   	push   %esi
40b337:	ff 75 10             	push   0x10(%ebp)
40b33a:	8b f1                	mov    %ecx,%esi
40b33c:	33 c0                	xor    %eax,%eax
40b33e:	ff 75 0c             	push   0xc(%ebp)
40b341:	ff 75 08             	push   0x8(%ebp)
40b344:	83 66 10 00          	andl   $0x0,0x10(%esi)
40b348:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40b34f:	66 89 06             	mov    %ax,(%esi)
40b352:	e8 9c 44 01 00       	call   0x41f7f3
40b357:	8b c6                	mov    %esi,%eax
40b359:	5e                   	pop    %esi
40b35a:	5d                   	pop    %ebp
40b35b:	c2 10 00             	ret    $0x10
40b35e:	55                   	push   %ebp
40b35f:	8b ec                	mov    %esp,%ebp
40b361:	56                   	push   %esi
40b362:	ff 75 08             	push   0x8(%ebp)
40b365:	8b f1                	mov    %ecx,%esi
40b367:	33 c0                	xor    %eax,%eax
40b369:	83 66 10 00          	andl   $0x0,0x10(%esi)
40b36d:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40b374:	66 89 06             	mov    %ax,(%esi)
40b377:	e8 00 45 01 00       	call   0x41f87c
40b37c:	8b c6                	mov    %esi,%eax
40b37e:	5e                   	pop    %esi
40b37f:	5d                   	pop    %ebp
40b380:	c2 04 00             	ret    $0x4
40b383:	55                   	push   %ebp
40b384:	8b ec                	mov    %esp,%ebp
40b386:	56                   	push   %esi
40b387:	ff 75 0c             	push   0xc(%ebp)
40b38a:	8b f1                	mov    %ecx,%esi
40b38c:	33 c0                	xor    %eax,%eax
40b38e:	ff 75 08             	push   0x8(%ebp)
40b391:	83 66 10 00          	andl   $0x0,0x10(%esi)
40b395:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
40b39c:	66 89 06             	mov    %ax,(%esi)
40b39f:	e8 ff 44 01 00       	call   0x41f8a3
40b3a4:	8b c6                	mov    %esi,%eax
40b3a6:	5e                   	pop    %esi
40b3a7:	5d                   	pop    %ebp
40b3a8:	c2 08 00             	ret    $0x8
40b3ab:	6a 04                	push   $0x4
40b3ad:	b8 dd b6 48 00       	mov    $0x48b6dd,%eax
40b3b2:	e8 93 46 03 00       	call   0x43fa4a
40b3b7:	8b f1                	mov    %ecx,%esi
40b3b9:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b3bc:	e8 ab fe ff ff       	call   0x40b26c
40b3c1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b3c5:	ff 75 0c             	push   0xc(%ebp)
40b3c8:	c7 06 20 5a 49 00    	movl   $0x495a20,(%esi)
40b3ce:	e8 21 f9 00 00       	call   0x41acf4
40b3d3:	59                   	pop    %ecx
40b3d4:	8b 4d 08             	mov    0x8(%ebp),%ecx
40b3d7:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
40b3db:	8b 51 10             	mov    0x10(%ecx),%edx
40b3de:	72 02                	jb     0x40b3e2
40b3e0:	8b 09                	mov    (%ecx),%ecx
40b3e2:	50                   	push   %eax
40b3e3:	52                   	push   %edx
40b3e4:	51                   	push   %ecx
40b3e5:	8b ce                	mov    %esi,%ecx
40b3e7:	e8 73 fa 00 00       	call   0x41ae5f
40b3ec:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b3f0:	8b c6                	mov    %esi,%eax
40b3f2:	e8 1c 46 03 00       	call   0x43fa13
40b3f7:	c2 08 00             	ret    $0x8
40b3fa:	6a 04                	push   $0x4
40b3fc:	b8 00 b7 48 00       	mov    $0x48b700,%eax
40b401:	e8 44 46 03 00       	call   0x43fa4a
40b406:	8b f1                	mov    %ecx,%esi
40b408:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b40b:	e8 5c fe ff ff       	call   0x40b26c
40b410:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b414:	ff 75 08             	push   0x8(%ebp)
40b417:	83 66 38 00          	andl   $0x0,0x38(%esi)
40b41b:	c7 06 20 5a 49 00    	movl   $0x495a20,(%esi)
40b421:	e8 ce f8 00 00       	call   0x41acf4
40b426:	59                   	pop    %ecx
40b427:	89 46 3c             	mov    %eax,0x3c(%esi)
40b42a:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b42e:	8b c6                	mov    %esi,%eax
40b430:	e8 de 45 03 00       	call   0x43fa13
40b435:	c2 04 00             	ret    $0x4
40b438:	6a 08                	push   $0x8
40b43a:	b8 55 b7 48 00       	mov    $0x48b755,%eax
40b43f:	e8 06 46 03 00       	call   0x43fa4a
40b444:	8b f9                	mov    %ecx,%edi
40b446:	89 7d ec             	mov    %edi,-0x14(%ebp)
40b449:	33 c9                	xor    %ecx,%ecx
40b44b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40b44e:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
40b451:	74 2b                	je     0x40b47e
40b453:	8d 47 68             	lea    0x68(%edi),%eax
40b456:	c7 07 64 5a 49 00    	movl   $0x495a64,(%edi)
40b45c:	c7 47 10 6c 5a 49 00 	movl   $0x495a6c,0x10(%edi)
40b463:	89 45 0c             	mov    %eax,0xc(%ebp)
40b466:	c7 00 e0 46 49 00    	movl   $0x4946e0,(%eax)
40b46c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40b46f:	c7 00 44 4a 49 00    	movl   $0x494a44,(%eax)
40b475:	33 c0                	xor    %eax,%eax
40b477:	40                   	inc    %eax
40b478:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b47b:	89 45 f0             	mov    %eax,-0x10(%ebp)
40b47e:	51                   	push   %ecx
40b47f:	8d 77 18             	lea    0x18(%edi),%esi
40b482:	8b cf                	mov    %edi,%ecx
40b484:	56                   	push   %esi
40b485:	e8 83 fb ff ff       	call   0x40b00d
40b48a:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
40b491:	8b ce                	mov    %esi,%ecx
40b493:	8b 07                	mov    (%edi),%eax
40b495:	ff 75 08             	push   0x8(%ebp)
40b498:	8b 40 04             	mov    0x4(%eax),%eax
40b49b:	c7 04 07 60 5a 49 00 	movl   $0x495a60,(%edi,%eax,1)
40b4a2:	8b 07                	mov    (%edi),%eax
40b4a4:	8b 50 04             	mov    0x4(%eax),%edx
40b4a7:	8d 42 98             	lea    -0x68(%edx),%eax
40b4aa:	89 44 3a fc          	mov    %eax,-0x4(%edx,%edi,1)
40b4ae:	e8 47 ff ff ff       	call   0x40b3fa
40b4b3:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b4b7:	8b c7                	mov    %edi,%eax
40b4b9:	e8 55 45 03 00       	call   0x43fa13
40b4be:	c2 08 00             	ret    $0x8
40b4c1:	6a 04                	push   $0x4
40b4c3:	b8 80 b7 48 00       	mov    $0x48b780,%eax
40b4c8:	e8 7d 45 03 00       	call   0x43fa4a
40b4cd:	8b f1                	mov    %ecx,%esi
40b4cf:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b4d2:	c7 06 b0 45 49 00    	movl   $0x4945b0,(%esi)
40b4d8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b4dc:	8b 45 0c             	mov    0xc(%ebp),%eax
40b4df:	c7 06 c0 45 49 00    	movl   $0x4945c0,(%esi)
40b4e5:	89 46 04             	mov    %eax,0x4(%esi)
40b4e8:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
40b4ef:	c7 06 70 61 49 00    	movl   $0x496170,(%esi)
40b4f5:	e8 8c a8 01 00       	call   0x425d86
40b4fa:	89 46 08             	mov    %eax,0x8(%esi)
40b4fd:	89 56 0c             	mov    %edx,0xc(%esi)
40b500:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b504:	8b c6                	mov    %esi,%eax
40b506:	e8 08 45 03 00       	call   0x43fa13
40b50b:	c2 08 00             	ret    $0x8
40b50e:	6a 04                	push   $0x4
40b510:	b8 ab b7 48 00       	mov    $0x48b7ab,%eax
40b515:	e8 30 45 03 00       	call   0x43fa4a
40b51a:	8b f1                	mov    %ecx,%esi
40b51c:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b51f:	c7 06 b0 45 49 00    	movl   $0x4945b0,(%esi)
40b525:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b529:	8b 45 0c             	mov    0xc(%ebp),%eax
40b52c:	c7 06 c0 45 49 00    	movl   $0x4945c0,(%esi)
40b532:	89 46 04             	mov    %eax,0x4(%esi)
40b535:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
40b53c:	c7 06 54 61 49 00    	movl   $0x496154,(%esi)
40b542:	e8 3f a8 01 00       	call   0x425d86
40b547:	89 46 08             	mov    %eax,0x8(%esi)
40b54a:	89 56 0c             	mov    %edx,0xc(%esi)
40b54d:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b551:	8b c6                	mov    %esi,%eax
40b553:	e8 bb 44 03 00       	call   0x43fa13
40b558:	c2 08 00             	ret    $0x8
40b55b:	6a 14                	push   $0x14
40b55d:	b8 ce b7 48 00       	mov    $0x48b7ce,%eax
40b562:	e8 e3 44 03 00       	call   0x43fa4a
40b567:	8b d9                	mov    %ecx,%ebx
40b569:	89 5d f0             	mov    %ebx,-0x10(%ebp)
40b56c:	ff 75 0c             	push   0xc(%ebp)
40b56f:	e8 59 18 00 00       	call   0x40cdcd
40b574:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b578:	8d 45 e0             	lea    -0x20(%ebp),%eax
40b57b:	50                   	push   %eax
40b57c:	c7 03 e4 45 49 00    	movl   $0x4945e4,(%ebx)
40b582:	e8 b3 a8 01 00       	call   0x425e3a
40b587:	8b f0                	mov    %eax,%esi
40b589:	8d 7b 08             	lea    0x8(%ebx),%edi
40b58c:	59                   	pop    %ecx
40b58d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b58e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b58f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b590:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b591:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b595:	8b c3                	mov    %ebx,%eax
40b597:	e8 77 44 03 00       	call   0x43fa13
40b59c:	c2 08 00             	ret    $0x8
40b59f:	6a 04                	push   $0x4
40b5a1:	b8 f1 b7 48 00       	mov    $0x48b7f1,%eax
40b5a6:	e8 9f 44 03 00       	call   0x43fa4a
40b5ab:	8b f1                	mov    %ecx,%esi
40b5ad:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b5b0:	ff 75 0c             	push   0xc(%ebp)
40b5b3:	e8 15 18 00 00       	call   0x40cdcd
40b5b8:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b5bc:	8b ce                	mov    %esi,%ecx
40b5be:	ff 75 08             	push   0x8(%ebp)
40b5c1:	c7 06 14 46 49 00    	movl   $0x494614,(%esi)
40b5c7:	e8 58 f9 00 00       	call   0x41af24
40b5cc:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b5d0:	8b c6                	mov    %esi,%eax
40b5d2:	e8 3c 44 03 00       	call   0x43fa13
40b5d7:	c2 08 00             	ret    $0x8
40b5da:	55                   	push   %ebp
40b5db:	8b ec                	mov    %esp,%ebp
40b5dd:	8b 55 08             	mov    0x8(%ebp),%edx
40b5e0:	8b 02                	mov    (%edx),%eax
40b5e2:	8b 40 04             	mov    0x4(%eax),%eax
40b5e5:	8b 44 10 38          	mov    0x38(%eax,%edx,1),%eax
40b5e9:	85 c0                	test   %eax,%eax
40b5eb:	89 01                	mov    %eax,(%ecx)
40b5ed:	0f 94 c0             	sete   %al
40b5f0:	88 41 04             	mov    %al,0x4(%ecx)
40b5f3:	33 c0                	xor    %eax,%eax
40b5f5:	66 89 41 06          	mov    %ax,0x6(%ecx)
40b5f9:	8b c1                	mov    %ecx,%eax
40b5fb:	5d                   	pop    %ebp
40b5fc:	c2 04 00             	ret    $0x4
40b5ff:	6a 04                	push   $0x4
40b601:	b8 17 b8 48 00       	mov    $0x48b817,%eax
40b606:	e8 3f 44 03 00       	call   0x43fa4a
40b60b:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40b60e:	33 c0                	xor    %eax,%eax
40b610:	89 01                	mov    %eax,(%ecx)
40b612:	88 41 04             	mov    %al,0x4(%ecx)
40b615:	89 41 08             	mov    %eax,0x8(%ecx)
40b618:	89 41 0c             	mov    %eax,0xc(%ecx)
40b61b:	89 41 10             	mov    %eax,0x10(%ecx)
40b61e:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b621:	89 41 14             	mov    %eax,0x14(%ecx)
40b624:	89 41 18             	mov    %eax,0x18(%ecx)
40b627:	88 41 1c             	mov    %al,0x1c(%ecx)
40b62a:	89 41 20             	mov    %eax,0x20(%ecx)
40b62d:	89 41 24             	mov    %eax,0x24(%ecx)
40b630:	88 41 28             	mov    %al,0x28(%ecx)
40b633:	89 41 2c             	mov    %eax,0x2c(%ecx)
40b636:	89 41 30             	mov    %eax,0x30(%ecx)
40b639:	88 41 34             	mov    %al,0x34(%ecx)
40b63c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b640:	8b c1                	mov    %ecx,%eax
40b642:	e8 cc 43 03 00       	call   0x43fa13
40b647:	c3                   	ret
40b648:	6a 04                	push   $0x4
40b64a:	b8 3d b8 48 00       	mov    $0x48b83d,%eax
40b64f:	e8 f6 43 03 00       	call   0x43fa4a
40b654:	8b f9                	mov    %ecx,%edi
40b656:	89 7d f0             	mov    %edi,-0x10(%ebp)
40b659:	8b 5d 08             	mov    0x8(%ebp),%ebx
40b65c:	8d 4f 08             	lea    0x8(%edi),%ecx
40b65f:	8b 03                	mov    (%ebx),%eax
40b661:	89 07                	mov    %eax,(%edi)
40b663:	8a 43 04             	mov    0x4(%ebx),%al
40b666:	88 47 04             	mov    %al,0x4(%edi)
40b669:	8d 43 08             	lea    0x8(%ebx),%eax
40b66c:	50                   	push   %eax
40b66d:	e8 94 05 00 00       	call   0x40bc06