40f1b6:	eb 15                	jmp    0x40f1cd
40f1b8:	55                   	push   %ebp
40f1b9:	8d 6b 10             	lea    0x10(%ebx),%ebp
40f1bc:	6a ff                	push   $0xffffffff
40f1be:	53                   	push   %ebx
40f1bf:	e8 be c9 ff ff       	call   0x40bb82
40f1c4:	83 c4 08             	add    $0x8,%esp
40f1c7:	5d                   	pop    %ebp
40f1c8:	b8 01 00 00 00       	mov    $0x1,%eax
40f1cd:	5d                   	pop    %ebp
40f1ce:	5f                   	pop    %edi
40f1cf:	5e                   	pop    %esi
40f1d0:	5b                   	pop    %ebx
40f1d1:	8b e5                	mov    %ebp,%esp
40f1d3:	5d                   	pop    %ebp
40f1d4:	c3                   	ret
40f1d5:	55                   	push   %ebp
40f1d6:	8b 4c 24 08          	mov    0x8(%esp),%ecx
40f1da:	8b 29                	mov    (%ecx),%ebp
40f1dc:	8b 41 1c             	mov    0x1c(%ecx),%eax
40f1df:	50                   	push   %eax
40f1e0:	8b 41 18             	mov    0x18(%ecx),%eax
40f1e3:	50                   	push   %eax
40f1e4:	e8 99 c9 ff ff       	call   0x40bb82
40f1e9:	83 c4 08             	add    $0x8,%esp
40f1ec:	5d                   	pop    %ebp
40f1ed:	c2 04 00             	ret    $0x4
40f1f0:	a1 2c 70 43 00       	mov    0x43702c,%eax
40f1f5:	83 f8 01             	cmp    $0x1,%eax
40f1f8:	74 0d                	je     0x40f207
40f1fa:	85 c0                	test   %eax,%eax
40f1fc:	75 2e                	jne    0x40f22c
40f1fe:	83 3d f4 17 43 00 01 	cmpl   $0x1,0x4317f4
40f205:	75 25                	jne    0x40f22c
40f207:	68 fc 00 00 00       	push   $0xfc
40f20c:	e8 1f 00 00 00       	call   0x40f230
40f211:	a1 ec 72 43 00       	mov    0x4372ec,%eax
40f216:	83 c4 04             	add    $0x4,%esp
40f219:	85 c0                	test   %eax,%eax
40f21b:	74 02                	je     0x40f21f
40f21d:	ff d0                	call   *%eax
40f21f:	68 ff 00 00 00       	push   $0xff
40f224:	e8 07 00 00 00       	call   0x40f230
40f229:	83 c4 04             	add    $0x4,%esp
40f22c:	c3                   	ret
40f22d:	90                   	nop
40f22e:	90                   	nop
40f22f:	90                   	nop
40f230:	8b 4c 24 04          	mov    0x4(%esp),%ecx
40f234:	81 ec a8 01 00 00    	sub    $0x1a8,%esp
40f23a:	b8 10 1e 43 00       	mov    $0x431e10,%eax
40f23f:	53                   	push   %ebx
40f240:	55                   	push   %ebp
40f241:	56                   	push   %esi
40f242:	57                   	push   %edi
40f243:	33 ed                	xor    %ebp,%ebp
40f245:	3b 08                	cmp    (%eax),%ecx
40f247:	74 0b                	je     0x40f254
40f249:	83 c0 08             	add    $0x8,%eax
40f24c:	45                   	inc    %ebp
40f24d:	3d a0 1e 43 00       	cmp    $0x431ea0,%eax
40f252:	72 f1                	jb     0x40f245
40f254:	3b 0c ed 10 1e 43 00 	cmp    0x431e10(,%ebp,8),%ecx
40f25b:	0f 85 9a 01 00 00    	jne    0x40f3fb
40f261:	a1 2c 70 43 00       	mov    0x43702c,%eax
40f266:	83 f8 01             	cmp    $0x1,%eax
40f269:	0f 84 4e 01 00 00    	je     0x40f3bd
40f26f:	85 c0                	test   %eax,%eax
40f271:	75 0d                	jne    0x40f280
40f273:	83 3d f4 17 43 00 01 	cmpl   $0x1,0x4317f4
40f27a:	0f 84 3d 01 00 00    	je     0x40f3bd
40f280:	81 f9 fc 00 00 00    	cmp    $0xfc,%ecx
40f286:	0f 84 6f 01 00 00    	je     0x40f3fb
40f28c:	8d 84 24 b4 00 00 00 	lea    0xb4(%esp),%eax
40f293:	68 04 01 00 00       	push   $0x104
40f298:	50                   	push   %eax
40f299:	6a 00                	push   $0x0
40f29b:	ff 15 7c 96 43 00    	call   *0x43967c
40f2a1:	85 c0                	test   %eax,%eax
40f2a3:	75 16                	jne    0x40f2bb
40f2a5:	b9 05 00 00 00       	mov    $0x5,%ecx
40f2aa:	be 70 c3 42 00       	mov    $0x42c370,%esi
40f2af:	8d bc 24 b4 00 00 00 	lea    0xb4(%esp),%edi
40f2b6:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40f2b8:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
40f2ba:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40f2bb:	8d bc 24 b4 00 00 00 	lea    0xb4(%esp),%edi
40f2c2:	83 c9 ff             	or     $0xffffffff,%ecx
40f2c5:	33 c0                	xor    %eax,%eax
40f2c7:	8d 9c 24 b4 00 00 00 	lea    0xb4(%esp),%ebx
40f2ce:	f2 ae                	repnz scas %es:(%edi),%al
40f2d0:	f7 d1                	not    %ecx
40f2d2:	83 f9 3c             	cmp    $0x3c,%ecx
40f2d5:	76 2d                	jbe    0x40f304
40f2d7:	8d bc 24 b4 00 00 00 	lea    0xb4(%esp),%edi
40f2de:	83 c9 ff             	or     $0xffffffff,%ecx
40f2e1:	f2 ae                	repnz scas %es:(%edi),%al
40f2e3:	f7 d1                	not    %ecx
40f2e5:	49                   	dec    %ecx
40f2e6:	6a 03                	push   $0x3
40f2e8:	8b d9                	mov    %ecx,%ebx
40f2ea:	8d 8c 24 b8 00 00 00 	lea    0xb8(%esp),%ecx
40f2f1:	83 e9 3b             	sub    $0x3b,%ecx
40f2f4:	68 6c c3 42 00       	push   $0x42c36c
40f2f9:	03 d9                	add    %ecx,%ebx
40f2fb:	53                   	push   %ebx
40f2fc:	e8 2f 18 00 00       	call   0x410b30
40f301:	83 c4 0c             	add    $0xc,%esp
40f304:	b9 06 00 00 00       	mov    $0x6,%ecx
40f309:	be 50 c3 42 00       	mov    $0x42c350,%esi
40f30e:	8d 7c 24 14          	lea    0x14(%esp),%edi
40f312:	33 c0                	xor    %eax,%eax
40f314:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40f316:	66 a5                	movsw  %ds:(%esi),%es:(%edi)
40f318:	83 c9 ff             	or     $0xffffffff,%ecx
40f31b:	8b fb                	mov    %ebx,%edi
40f31d:	f2 ae                	repnz scas %es:(%edi),%al
40f31f:	f7 d1                	not    %ecx
40f321:	2b f9                	sub    %ecx,%edi
40f323:	8d 54 24 14          	lea    0x14(%esp),%edx
40f327:	8b d9                	mov    %ecx,%ebx
40f329:	8b f7                	mov    %edi,%esi
40f32b:	83 c9 ff             	or     $0xffffffff,%ecx
40f32e:	8b fa                	mov    %edx,%edi
40f330:	f2 ae                	repnz scas %es:(%edi),%al
40f332:	8b cb                	mov    %ebx,%ecx
40f334:	4f                   	dec    %edi
40f335:	c1 e9 02             	shr    $0x2,%ecx
40f338:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40f33a:	8b cb                	mov    %ebx,%ecx
40f33c:	8d 54 24 14          	lea    0x14(%esp),%edx
40f340:	83 e1 03             	and    $0x3,%ecx
40f343:	68 10 20 01 00       	push   $0x12010
40f348:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
40f34a:	bf 4c c3 42 00       	mov    $0x42c34c,%edi
40f34f:	83 c9 ff             	or     $0xffffffff,%ecx
40f352:	f2 ae                	repnz scas %es:(%edi),%al
40f354:	f7 d1                	not    %ecx
40f356:	2b f9                	sub    %ecx,%edi
40f358:	68 24 c3 42 00       	push   $0x42c324
40f35d:	8b f7                	mov    %edi,%esi
40f35f:	8b d9                	mov    %ecx,%ebx
40f361:	8b fa                	mov    %edx,%edi
40f363:	83 c9 ff             	or     $0xffffffff,%ecx
40f366:	f2 ae                	repnz scas %es:(%edi),%al
40f368:	8b cb                	mov    %ebx,%ecx
40f36a:	4f                   	dec    %edi
40f36b:	c1 e9 02             	shr    $0x2,%ecx
40f36e:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40f370:	8b cb                	mov    %ebx,%ecx
40f372:	8d 54 24 1c          	lea    0x1c(%esp),%edx
40f376:	83 e1 03             	and    $0x3,%ecx
40f379:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
40f37b:	8b 3c ed 14 1e 43 00 	mov    0x431e14(,%ebp,8),%edi
40f382:	83 c9 ff             	or     $0xffffffff,%ecx
40f385:	f2 ae                	repnz scas %es:(%edi),%al
40f387:	f7 d1                	not    %ecx
40f389:	2b f9                	sub    %ecx,%edi
40f38b:	8b f7                	mov    %edi,%esi
40f38d:	8b d9                	mov    %ecx,%ebx
40f38f:	8b fa                	mov    %edx,%edi
40f391:	83 c9 ff             	or     $0xffffffff,%ecx
40f394:	f2 ae                	repnz scas %es:(%edi),%al
40f396:	8b cb                	mov    %ebx,%ecx
40f398:	4f                   	dec    %edi
40f399:	c1 e9 02             	shr    $0x2,%ecx
40f39c:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
40f39e:	8b cb                	mov    %ebx,%ecx
40f3a0:	8d 44 24 1c          	lea    0x1c(%esp),%eax
40f3a4:	83 e1 03             	and    $0x3,%ecx
40f3a7:	50                   	push   %eax
40f3a8:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
40f3aa:	e8 f1 16 00 00       	call   0x410aa0
40f3af:	83 c4 0c             	add    $0xc,%esp
40f3b2:	5f                   	pop    %edi
40f3b3:	5e                   	pop    %esi
40f3b4:	5d                   	pop    %ebp
40f3b5:	5b                   	pop    %ebx
40f3b6:	81 c4 a8 01 00 00    	add    $0x1a8,%esp
40f3bc:	c3                   	ret
40f3bd:	a1 a0 89 43 00       	mov    0x4389a0,%eax
40f3c2:	85 c0                	test   %eax,%eax
40f3c4:	74 08                	je     0x40f3ce
40f3c6:	8b 70 48             	mov    0x48(%eax),%esi
40f3c9:	83 fe ff             	cmp    $0xffffffff,%esi
40f3cc:	75 0a                	jne    0x40f3d8
40f3ce:	6a f4                	push   $0xfffffff4
40f3d0:	ff 15 08 96 43 00    	call   *0x439608
40f3d6:	8b f0                	mov    %eax,%esi
40f3d8:	8b 14 ed 14 1e 43 00 	mov    0x431e14(,%ebp,8),%edx
40f3df:	8d 4c 24 10          	lea    0x10(%esp),%ecx
40f3e3:	6a 00                	push   $0x0
40f3e5:	51                   	push   %ecx
40f3e6:	8b fa                	mov    %edx,%edi
40f3e8:	83 c9 ff             	or     $0xffffffff,%ecx
40f3eb:	33 c0                	xor    %eax,%eax
40f3ed:	f2 ae                	repnz scas %es:(%edi),%al
40f3ef:	f7 d1                	not    %ecx
40f3f1:	49                   	dec    %ecx
40f3f2:	51                   	push   %ecx
40f3f3:	52                   	push   %edx
40f3f4:	56                   	push   %esi
40f3f5:	ff 15 98 96 43 00    	call   *0x439698
40f3fb:	5f                   	pop    %edi
40f3fc:	5e                   	pop    %esi
40f3fd:	5d                   	pop    %ebp
40f3fe:	5b                   	pop    %ebx
40f3ff:	81 c4 a8 01 00 00    	add    $0x1a8,%esp
40f405:	c3                   	ret
40f406:	90                   	nop
40f407:	90                   	nop
40f408:	90                   	nop
40f409:	90                   	nop
40f40a:	90                   	nop
40f40b:	90                   	nop
40f40c:	90                   	nop
40f40d:	90                   	nop
40f40e:	90                   	nop
40f40f:	90                   	nop
40f410:	a1 e4 1e 43 00       	mov    0x431ee4,%eax
40f415:	56                   	push   %esi
40f416:	8b 35 e0 96 43 00    	mov    0x4396e0,%esi
40f41c:	50                   	push   %eax
40f41d:	ff d6                	call   *%esi
40f41f:	8b 0d d4 1e 43 00    	mov    0x431ed4,%ecx
40f425:	51                   	push   %ecx
40f426:	ff d6                	call   *%esi
40f428:	8b 15 c4 1e 43 00    	mov    0x431ec4,%edx
40f42e:	52                   	push   %edx
40f42f:	ff d6                	call   *%esi
40f431:	a1 a4 1e 43 00       	mov    0x431ea4,%eax
40f436:	50                   	push   %eax
40f437:	ff d6                	call   *%esi
40f439:	5e                   	pop    %esi
40f43a:	c3                   	ret
40f43b:	90                   	nop
40f43c:	90                   	nop
40f43d:	90                   	nop
40f43e:	90                   	nop
40f43f:	90                   	nop
40f440:	55                   	push   %ebp
40f441:	8b ec                	mov    %esp,%ebp
40f443:	57                   	push   %edi
40f444:	8b 7d 08             	mov    0x8(%ebp),%edi
40f447:	8b 04 bd a0 1e 43 00 	mov    0x431ea0(,%edi,4),%eax
40f44e:	85 c0                	test   %eax,%eax
40f450:	75 53                	jne    0x40f4a5
40f452:	56                   	push   %esi
40f453:	6a 18                	push   $0x18
40f455:	e8 66 d0 ff ff       	call   0x40c4c0
40f45a:	8b f0                	mov    %eax,%esi
40f45c:	83 c4 04             	add    $0x4,%esp
40f45f:	85 f6                	test   %esi,%esi
40f461:	75 0a                	jne    0x40f46d
40f463:	6a 11                	push   $0x11
40f465:	e8 26 cf ff ff       	call   0x40c390
40f46a:	83 c4 04             	add    $0x4,%esp
40f46d:	6a 11                	push   $0x11
40f46f:	e8 cc ff ff ff       	call   0x40f440
40f474:	8b 04 bd a0 1e 43 00 	mov    0x431ea0(,%edi,4),%eax
40f47b:	83 c4 04             	add    $0x4,%esp
40f47e:	85 c0                	test   %eax,%eax
40f480:	56                   	push   %esi
40f481:	75 0f                	jne    0x40f492
40f483:	ff 15 e0 96 43 00    	call   *0x4396e0
40f489:	89 34 bd a0 1e 43 00 	mov    %esi,0x431ea0(,%edi,4)
40f490:	eb 08                	jmp    0x40f49a
40f492:	e8 f9 d0 ff ff       	call   0x40c590
40f497:	83 c4 04             	add    $0x4,%esp
40f49a:	6a 11                	push   $0x11
40f49c:	e8 1f 00 00 00       	call   0x40f4c0
40f4a1:	83 c4 04             	add    $0x4,%esp
40f4a4:	5e                   	pop    %esi
40f4a5:	8b 04 bd a0 1e 43 00 	mov    0x431ea0(,%edi,4),%eax
40f4ac:	50                   	push   %eax
40f4ad:	ff 15 c4 96 43 00    	call   *0x4396c4
40f4b3:	5f                   	pop    %edi
40f4b4:	5d                   	pop    %ebp
40f4b5:	c3                   	ret
40f4b6:	90                   	nop
40f4b7:	90                   	nop
40f4b8:	90                   	nop
40f4b9:	90                   	nop
40f4ba:	90                   	nop
40f4bb:	90                   	nop
40f4bc:	90                   	nop
40f4bd:	90                   	nop
40f4be:	90                   	nop
40f4bf:	90                   	nop
40f4c0:	55                   	push   %ebp
40f4c1:	8b ec                	mov    %esp,%ebp
40f4c3:	8b 45 08             	mov    0x8(%ebp),%eax
40f4c6:	8b 0c 85 a0 1e 43 00 	mov    0x431ea0(,%eax,4),%ecx
40f4cd:	51                   	push   %ecx
40f4ce:	ff 15 cc 96 43 00    	call   *0x4396cc
40f4d4:	5d                   	pop    %ebp
40f4d5:	c3                   	ret
40f4d6:	90                   	nop
40f4d7:	90                   	nop
40f4d8:	90                   	nop
40f4d9:	90                   	nop
40f4da:	90                   	nop
40f4db:	90                   	nop
40f4dc:	90                   	nop
40f4dd:	90                   	nop
40f4de:	90                   	nop
40f4df:	90                   	nop
40f4e0:	55                   	push   %ebp
40f4e1:	8b ec                	mov    %esp,%ebp
40f4e3:	8b 45 08             	mov    0x8(%ebp),%eax
40f4e6:	3d 30 42 43 00       	cmp    $0x434230,%eax
40f4eb:	72 1d                	jb     0x40f50a
40f4ed:	3d 90 44 43 00       	cmp    $0x434490,%eax
40f4f2:	77 16                	ja     0x40f50a
40f4f4:	2d 30 42 43 00       	sub    $0x434230,%eax
40f4f9:	c1 f8 05             	sar    $0x5,%eax
40f4fc:	83 c0 1c             	add    $0x1c,%eax
40f4ff:	50                   	push   %eax
40f500:	e8 3b ff ff ff       	call   0x40f440
40f505:	83 c4 04             	add    $0x4,%esp
40f508:	5d                   	pop    %ebp
40f509:	c3                   	ret
40f50a:	83 c0 20             	add    $0x20,%eax
40f50d:	50                   	push   %eax
40f50e:	ff 15 c4 96 43 00    	call   *0x4396c4
40f514:	5d                   	pop    %ebp
40f515:	c3                   	ret
40f516:	90                   	nop
40f517:	90                   	nop
40f518:	90                   	nop
40f519:	90                   	nop
40f51a:	90                   	nop
40f51b:	90                   	nop
40f51c:	90                   	nop
40f51d:	90                   	nop
40f51e:	90                   	nop
40f51f:	90                   	nop
40f520:	55                   	push   %ebp
40f521:	8b ec                	mov    %esp,%ebp
40f523:	8b 45 08             	mov    0x8(%ebp),%eax
40f526:	83 f8 14             	cmp    $0x14,%eax
40f529:	7d 0e                	jge    0x40f539
40f52b:	83 c0 1c             	add    $0x1c,%eax
40f52e:	50                   	push   %eax
40f52f:	e8 0c ff ff ff       	call   0x40f440
40f534:	83 c4 04             	add    $0x4,%esp
40f537:	5d                   	pop    %ebp
40f538:	c3                   	ret
40f539:	8b 45 0c             	mov    0xc(%ebp),%eax
40f53c:	83 c0 20             	add    $0x20,%eax