40f213:	8d 4d bc             	lea    -0x44(%ebp),%ecx
40f216:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
40f21d:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
40f224:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40f22b:	e8 30 2e ff ff       	call   0x402060
40f230:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40f234:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
40f237:	6a 01                	push   $0x1
40f239:	68 c0 f2 4a 00       	push   $0x4af2c0
40f23e:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
40f245:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
40f24c:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40f253:	e8 08 2e ff ff       	call   0x402060
40f258:	8d 45 bc             	lea    -0x44(%ebp),%eax
40f25b:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
40f25f:	50                   	push   %eax
40f260:	8d 55 a4             	lea    -0x5c(%ebp),%edx
40f263:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40f266:	e8 d5 fd ff ff       	call   0x40f040
40f26b:	8b 4d b8             	mov    -0x48(%ebp),%ecx
40f26e:	83 c4 04             	add    $0x4,%esp
40f271:	83 f9 08             	cmp    $0x8,%ecx
40f274:	72 32                	jb     0x40f2a8
40f276:	8b 55 a4             	mov    -0x5c(%ebp),%edx
40f279:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40f280:	8b c2                	mov    %edx,%eax
40f282:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40f288:	72 14                	jb     0x40f29e
40f28a:	8b 50 fc             	mov    -0x4(%eax),%edx
40f28d:	83 c1 23             	add    $0x23,%ecx
40f290:	2b c2                	sub    %edx,%eax
40f292:	83 c0 fc             	add    $0xfffffffc,%eax
40f295:	83 f8 1f             	cmp    $0x1f,%eax
40f298:	0f 87 04 01 00 00    	ja     0x40f3a2
40f29e:	51                   	push   %ecx
40f29f:	52                   	push   %edx
40f2a0:	e8 63 a7 05 00       	call   0x469a08
40f2a5:	83 c4 08             	add    $0x8,%esp
40f2a8:	8b 4d d0             	mov    -0x30(%ebp),%ecx
40f2ab:	83 f9 08             	cmp    $0x8,%ecx
40f2ae:	72 32                	jb     0x40f2e2
40f2b0:	8b 55 bc             	mov    -0x44(%ebp),%edx
40f2b3:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
40f2ba:	8b c2                	mov    %edx,%eax
40f2bc:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
40f2c2:	72 14                	jb     0x40f2d8
40f2c4:	8b 50 fc             	mov    -0x4(%eax),%edx
40f2c7:	83 c1 23             	add    $0x23,%ecx
40f2ca:	2b c2                	sub    %edx,%eax
40f2cc:	83 c0 fc             	add    $0xfffffffc,%eax
40f2cf:	83 f8 1f             	cmp    $0x1f,%eax
40f2d2:	0f 87 ca 00 00 00    	ja     0x40f3a2
40f2d8:	51                   	push   %ecx
40f2d9:	52                   	push   %edx
40f2da:	e8 29 a7 05 00       	call   0x469a08
40f2df:	83 c4 08             	add    $0x8,%esp
40f2e2:	8b 7d ec             	mov    -0x14(%ebp),%edi
40f2e5:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40f2e8:	8b 75 d8             	mov    -0x28(%ebp),%esi
40f2eb:	83 ff 08             	cmp    $0x8,%edi
40f2ee:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40f2f1:	8b d3                	mov    %ebx,%edx
40f2f3:	6a 1a                	push   $0x1a
40f2f5:	68 2c 18 4b 00       	push   $0x4b182c
40f2fa:	0f 43 ce             	cmovae %esi,%ecx
40f2fd:	6a 00                	push   $0x0
40f2ff:	e8 bc b3 ff ff       	call   0x40a6c0
40f304:	83 c4 0c             	add    $0xc,%esp
40f307:	83 f8 ff             	cmp    $0xffffffff,%eax
40f30a:	75 46                	jne    0x40f352
40f30c:	6a 11                	push   $0x11
40f30e:	83 ff 08             	cmp    $0x8,%edi
40f311:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40f314:	68 64 18 4b 00       	push   $0x4b1864
40f319:	0f 43 ce             	cmovae %esi,%ecx
40f31c:	8b d3                	mov    %ebx,%edx
40f31e:	6a 00                	push   $0x0
40f320:	e8 9b b3 ff ff       	call   0x40a6c0
40f325:	83 c4 0c             	add    $0xc,%esp
40f328:	83 f8 ff             	cmp    $0xffffffff,%eax
40f32b:	75 25                	jne    0x40f352
40f32d:	6a 09                	push   $0x9
40f32f:	83 ff 08             	cmp    $0x8,%edi
40f332:	8d 4d d8             	lea    -0x28(%ebp),%ecx
40f335:	68 88 18 4b 00       	push   $0x4b1888
40f33a:	0f 43 ce             	cmovae %esi,%ecx
40f33d:	8b d3                	mov    %ebx,%edx
40f33f:	6a 00                	push   $0x0
40f341:	e8 7a b3 ff ff       	call   0x40a6c0
40f346:	83 c4 0c             	add    $0xc,%esp
40f349:	83 f8 ff             	cmp    $0xffffffff,%eax
40f34c:	75 04                	jne    0x40f352
40f34e:	32 db                	xor    %bl,%bl
40f350:	eb 02                	jmp    0x40f354
40f352:	b3 01                	mov    $0x1,%bl
40f354:	83 ff 08             	cmp    $0x8,%edi
40f357:	72 2b                	jb     0x40f384
40f359:	8d 3c 7d 02 00 00 00 	lea    0x2(,%edi,2),%edi
40f360:	8b c6                	mov    %esi,%eax
40f362:	81 ff 00 10 00 00    	cmp    $0x1000,%edi
40f368:	72 10                	jb     0x40f37a
40f36a:	8b 70 fc             	mov    -0x4(%eax),%esi
40f36d:	83 c7 23             	add    $0x23,%edi
40f370:	2b c6                	sub    %esi,%eax
40f372:	83 c0 fc             	add    $0xfffffffc,%eax
40f375:	83 f8 1f             	cmp    $0x1f,%eax
40f378:	77 28                	ja     0x40f3a2
40f37a:	57                   	push   %edi
40f37b:	56                   	push   %esi
40f37c:	e8 87 a6 05 00       	call   0x469a08
40f381:	83 c4 08             	add    $0x8,%esp
40f384:	8a c3                	mov    %bl,%al
40f386:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40f389:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40f390:	59                   	pop    %ecx
40f391:	5f                   	pop    %edi
40f392:	5e                   	pop    %esi
40f393:	5b                   	pop    %ebx
40f394:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40f397:	33 cd                	xor    %ebp,%ecx
40f399:	e8 2c a6 05 00       	call   0x4699ca
40f39e:	8b e5                	mov    %ebp,%esp
40f3a0:	5d                   	pop    %ebp
40f3a1:	c3                   	ret
40f3a2:	e8 8a a2 06 00       	call   0x479631
40f3a7:	cc                   	int3
40f3a8:	cc                   	int3
40f3a9:	cc                   	int3
40f3aa:	cc                   	int3
40f3ab:	cc                   	int3
40f3ac:	cc                   	int3
40f3ad:	cc                   	int3
40f3ae:	cc                   	int3
40f3af:	cc                   	int3
40f3b0:	8b d1                	mov    %ecx,%edx
40f3b2:	8b 8a a8 00 00 00    	mov    0xa8(%edx),%ecx
40f3b8:	8d 42 60             	lea    0x60(%edx),%eax
40f3bb:	57                   	push   %edi
40f3bc:	8b 78 4c             	mov    0x4c(%eax),%edi
40f3bf:	3b f8                	cmp    %eax,%edi
40f3c1:	75 08                	jne    0x40f3cb
40f3c3:	c6 40 41 00          	movb   $0x0,0x41(%eax)
40f3c7:	33 c0                	xor    %eax,%eax
40f3c9:	f3 ab                	rep stos %eax,%es:(%edi)
40f3cb:	8b 7a 5c             	mov    0x5c(%edx),%edi
40f3ce:	8d 42 10             	lea    0x10(%edx),%eax
40f3d1:	8b 48 48             	mov    0x48(%eax),%ecx
40f3d4:	3b f8                	cmp    %eax,%edi
40f3d6:	75 08                	jne    0x40f3e0
40f3d8:	c6 40 41 00          	movb   $0x0,0x41(%eax)
40f3dc:	33 c0                	xor    %eax,%eax
40f3de:	f3 ab                	rep stos %eax,%es:(%edi)
40f3e0:	5f                   	pop    %edi
40f3e1:	c3                   	ret
40f3e2:	cc                   	int3
40f3e3:	cc                   	int3
40f3e4:	cc                   	int3
40f3e5:	cc                   	int3
40f3e6:	cc                   	int3
40f3e7:	cc                   	int3
40f3e8:	cc                   	int3
40f3e9:	cc                   	int3
40f3ea:	cc                   	int3
40f3eb:	cc                   	int3
40f3ec:	cc                   	int3
40f3ed:	cc                   	int3
40f3ee:	cc                   	int3
40f3ef:	cc                   	int3
40f3f0:	55                   	push   %ebp
40f3f1:	8b ec                	mov    %esp,%ebp
40f3f3:	56                   	push   %esi
40f3f4:	8b f1                	mov    %ecx,%esi
40f3f6:	8b 8e a8 00 00 00    	mov    0xa8(%esi),%ecx
40f3fc:	8d 46 60             	lea    0x60(%esi),%eax
40f3ff:	57                   	push   %edi
40f400:	8b 78 4c             	mov    0x4c(%eax),%edi
40f403:	3b f8                	cmp    %eax,%edi
40f405:	75 08                	jne    0x40f40f
40f407:	c6 40 41 00          	movb   $0x0,0x41(%eax)
40f40b:	33 c0                	xor    %eax,%eax
40f40d:	f3 ab                	rep stos %eax,%es:(%edi)
40f40f:	8b 7e 5c             	mov    0x5c(%esi),%edi
40f412:	8d 46 10             	lea    0x10(%esi),%eax
40f415:	8b 48 48             	mov    0x48(%eax),%ecx
40f418:	3b f8                	cmp    %eax,%edi
40f41a:	75 08                	jne    0x40f424
40f41c:	c6 40 41 00          	movb   $0x0,0x41(%eax)
40f420:	33 c0                	xor    %eax,%eax
40f422:	f3 ab                	rep stos %eax,%es:(%edi)
40f424:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40f428:	74 0e                	je     0x40f438
40f42a:	68 b0 00 00 00       	push   $0xb0
40f42f:	56                   	push   %esi
40f430:	e8 d3 a5 05 00       	call   0x469a08
40f435:	83 c4 08             	add    $0x8,%esp
40f438:	5f                   	pop    %edi
40f439:	8b c6                	mov    %esi,%eax
40f43b:	5e                   	pop    %esi
40f43c:	5d                   	pop    %ebp
40f43d:	c2 04 00             	ret    $0x4
40f440:	b8 14 00 00 00       	mov    $0x14,%eax
40f445:	c3                   	ret
40f446:	cc                   	int3
40f447:	cc                   	int3
40f448:	cc                   	int3
40f449:	cc                   	int3
40f44a:	cc                   	int3
40f44b:	cc                   	int3
40f44c:	cc                   	int3
40f44d:	cc                   	int3
40f44e:	cc                   	int3
40f44f:	cc                   	int3
40f450:	55                   	push   %ebp
40f451:	8b ec                	mov    %esp,%ebp
40f453:	8b 45 08             	mov    0x8(%ebp),%eax
40f456:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
40f45c:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
40f463:	5d                   	pop    %ebp
40f464:	c2 04 00             	ret    $0x4
40f467:	cc                   	int3
40f468:	cc                   	int3
40f469:	cc                   	int3
40f46a:	cc                   	int3
40f46b:	cc                   	int3
40f46c:	cc                   	int3
40f46d:	cc                   	int3
40f46e:	cc                   	int3
40f46f:	cc                   	int3
40f470:	8b 41 f8             	mov    -0x8(%ecx),%eax
40f473:	56                   	push   %esi
40f474:	57                   	push   %edi
40f475:	8d 79 f8             	lea    -0x8(%ecx),%edi
40f478:	8b 70 44             	mov    0x44(%eax),%esi
40f47b:	8b ce                	mov    %esi,%ecx
40f47d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40f483:	8b cf                	mov    %edi,%ecx
40f485:	ff d6                	call   *%esi
40f487:	5f                   	pop    %edi
40f488:	83 c0 34             	add    $0x34,%eax
40f48b:	5e                   	pop    %esi
40f48c:	c3                   	ret
40f48d:	cc                   	int3
40f48e:	cc                   	int3
40f48f:	cc                   	int3
40f490:	8b 41 f8             	mov    -0x8(%ecx),%eax
40f493:	56                   	push   %esi
40f494:	57                   	push   %edi
40f495:	8d 79 f8             	lea    -0x8(%ecx),%edi
40f498:	8b 70 44             	mov    0x44(%eax),%esi
40f49b:	8b ce                	mov    %esi,%ecx
40f49d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40f4a3:	8b cf                	mov    %edi,%ecx
40f4a5:	ff d6                	call   *%esi
40f4a7:	5f                   	pop    %edi
40f4a8:	5e                   	pop    %esi
40f4a9:	c3                   	ret
40f4aa:	cc                   	int3
40f4ab:	cc                   	int3
40f4ac:	cc                   	int3
40f4ad:	cc                   	int3
40f4ae:	cc                   	int3
40f4af:	cc                   	int3
40f4b0:	e9 db 24 00 00       	jmp    0x411990
40f4b5:	cc                   	int3
40f4b6:	cc                   	int3
40f4b7:	cc                   	int3
40f4b8:	cc                   	int3
40f4b9:	cc                   	int3
40f4ba:	cc                   	int3
40f4bb:	cc                   	int3
40f4bc:	cc                   	int3
40f4bd:	cc                   	int3
40f4be:	cc                   	int3
40f4bf:	cc                   	int3
40f4c0:	55                   	push   %ebp
40f4c1:	8b ec                	mov    %esp,%ebp
40f4c3:	6a ff                	push   $0xffffffff
40f4c5:	68 f7 85 49 00       	push   $0x4985f7
40f4ca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40f4d0:	50                   	push   %eax
40f4d1:	51                   	push   %ecx
40f4d2:	56                   	push   %esi
40f4d3:	a1 14 40 4c 00       	mov    0x4c4014,%eax
40f4d8:	33 c5                	xor    %ebp,%eax
40f4da:	50                   	push   %eax
40f4db:	8d 45 f4             	lea    -0xc(%ebp),%eax
40f4de:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40f4e4:	68 10 01 00 00       	push   $0x110
40f4e9:	e8 ea a4 05 00       	call   0x4699d8
40f4ee:	8b f0                	mov    %eax,%esi
40f4f0:	89 75 f0             	mov    %esi,-0x10(%ebp)
40f4f3:	68 10 01 00 00       	push   $0x110
40f4f8:	6a 00                	push   $0x0
40f4fa:	56                   	push   %esi
40f4fb:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
40f502:	e8 a9 c6 05 00       	call   0x46bbb0
40f507:	83 c4 10             	add    $0x10,%esp
40f50a:	8b ce                	mov    %esi,%ecx
40f50c:	e8 ff 10 00 00       	call   0x410610
40f511:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40f514:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40f51b:	59                   	pop    %ecx
40f51c:	5e                   	pop    %esi
40f51d:	8b e5                	mov    %ebp,%esp
40f51f:	5d                   	pop    %ebp
40f520:	c2 04 00             	ret    $0x4
40f523:	cc                   	int3
40f524:	cc                   	int3
40f525:	cc                   	int3
40f526:	cc                   	int3
40f527:	cc                   	int3
40f528:	cc                   	int3
40f529:	cc                   	int3
40f52a:	cc                   	int3
40f52b:	cc                   	int3
40f52c:	cc                   	int3
40f52d:	cc                   	int3
40f52e:	cc                   	int3
40f52f:	cc                   	int3
40f530:	8b 41 fc             	mov    -0x4(%ecx),%eax
40f533:	56                   	push   %esi
40f534:	57                   	push   %edi
40f535:	8d 79 fc             	lea    -0x4(%ecx),%edi
40f538:	8b 70 44             	mov    0x44(%eax),%esi
40f53b:	8b ce                	mov    %esi,%ecx
40f53d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40f543:	8b cf                	mov    %edi,%ecx
40f545:	ff d6                	call   *%esi
40f547:	5f                   	pop    %edi
40f548:	83 c0 3c             	add    $0x3c,%eax
40f54b:	5e                   	pop    %esi
40f54c:	c3                   	ret
40f54d:	cc                   	int3
40f54e:	cc                   	int3
40f54f:	cc                   	int3
40f550:	8b 41 fc             	mov    -0x4(%ecx),%eax
40f553:	56                   	push   %esi
40f554:	57                   	push   %edi
40f555:	8d 79 fc             	lea    -0x4(%ecx),%edi
40f558:	8b 70 48             	mov    0x48(%eax),%esi
40f55b:	8b ce                	mov    %esi,%ecx
40f55d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
40f563:	8b cf                	mov    %edi,%ecx
40f565:	ff d6                	call   *%esi
40f567:	5f                   	pop    %edi
40f568:	83 c0 3c             	add    $0x3c,%eax
40f56b:	5e                   	pop    %esi
40f56c:	c3                   	ret
40f56d:	cc                   	int3
40f56e:	cc                   	int3