99f0f9:	89 75 98             	mov    %esi,-0x68(%ebp)
99f0fc:	89 4d a0             	mov    %ecx,-0x60(%ebp)
99f0ff:	39 8b d4 00 00 00    	cmp    %ecx,0xd4(%ebx)
99f105:	0f 8e c1 03 00 00    	jle    0x99f4cc
99f10b:	51                   	push   %ecx
99f10c:	8b cb                	mov    %ebx,%ecx
99f10e:	e8 98 8f a8 ff       	call   0x4280ab
99f113:	ff 75 a0             	push   -0x60(%ebp)
99f116:	8d 8b cc 00 00 00    	lea    0xcc(%ebx),%ecx
99f11c:	89 45 a8             	mov    %eax,-0x58(%ebp)
99f11f:	e8 2b 61 a6 ff       	call   0x40524f
99f124:	8b 08                	mov    (%eax),%ecx
99f126:	8b 45 a8             	mov    -0x58(%ebp),%eax
99f129:	85 c0                	test   %eax,%eax
99f12b:	0f 84 11 03 00 00    	je     0x99f442
99f131:	8b 00                	mov    (%eax),%eax
99f133:	8b b0 90 01 00 00    	mov    0x190(%eax),%esi
99f139:	8b ce                	mov    %esi,%ecx
99f13b:	e8 25 d5 a8 ff       	call   0x42c665
99f140:	8b 4d a8             	mov    -0x58(%ebp),%ecx
99f143:	ff d6                	call   *%esi
99f145:	85 c0                	test   %eax,%eax
99f147:	0f 84 ce 02 00 00    	je     0x99f41b
99f14d:	8b 55 a8             	mov    -0x58(%ebp),%edx
99f150:	8b 8a b0 00 00 00    	mov    0xb0(%edx),%ecx
99f156:	8b c1                	mov    %ecx,%eax
99f158:	83 e0 05             	and    $0x5,%eax
99f15b:	3c 05                	cmp    $0x5,%al
99f15d:	75 05                	jne    0x99f164
99f15f:	6a 06                	push   $0x6
99f161:	59                   	pop    %ecx
99f162:	eb 10                	jmp    0x99f174
99f164:	81 e1 00 a0 00 00    	and    $0xa000,%ecx
99f16a:	f7 d9                	neg    %ecx
99f16c:	1b c9                	sbb    %ecx,%ecx
99f16e:	83 e1 fa             	and    $0xfffffffa,%ecx
99f171:	83 c1 10             	add    $0x10,%ecx
99f174:	8b 02                	mov    (%edx),%eax
99f176:	51                   	push   %ecx
99f177:	6a ff                	push   $0xffffffff
99f179:	8d 4d 80             	lea    -0x80(%ebp),%ecx
99f17c:	8b b0 68 01 00 00    	mov    0x168(%eax),%esi
99f182:	51                   	push   %ecx
99f183:	8b ce                	mov    %esi,%ecx
99f185:	e8 db d4 a8 ff       	call   0x42c665
99f18a:	8b 4d a8             	mov    -0x58(%ebp),%ecx
99f18d:	ff d6                	call   *%esi
99f18f:	8b 45 80             	mov    -0x80(%ebp),%eax
99f192:	8b 75 98             	mov    -0x68(%ebp),%esi
99f195:	03 c7                	add    %edi,%eax
99f197:	89 45 f4             	mov    %eax,-0xc(%ebp)
99f19a:	8b 45 84             	mov    -0x7c(%ebp),%eax
99f19d:	03 c6                	add    %esi,%eax
99f19f:	89 7d ec             	mov    %edi,-0x14(%ebp)
99f1a2:	89 45 f8             	mov    %eax,-0x8(%ebp)
99f1a5:	33 c0                	xor    %eax,%eax
99f1a7:	89 45 dc             	mov    %eax,-0x24(%ebp)
99f1aa:	89 45 e0             	mov    %eax,-0x20(%ebp)
99f1ad:	89 45 e4             	mov    %eax,-0x1c(%ebp)
99f1b0:	89 45 e8             	mov    %eax,-0x18(%ebp)
99f1b3:	8d 45 dc             	lea    -0x24(%ebp),%eax
99f1b6:	50                   	push   %eax
99f1b7:	8b 45 a8             	mov    -0x58(%ebp),%eax
99f1ba:	89 75 f0             	mov    %esi,-0x10(%ebp)
99f1bd:	ff 70 20             	push   0x20(%eax)
99f1c0:	ff 15 40 3e d8 00    	call   *0xd83e40
99f1c6:	8d 45 dc             	lea    -0x24(%ebp),%eax
99f1c9:	8b cb                	mov    %ebx,%ecx
99f1cb:	50                   	push   %eax
99f1cc:	e8 93 7c a7 ff       	call   0x416e64
99f1d1:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
99f1d5:	0f 84 33 01 00 00    	je     0x99f30e
99f1db:	8b 45 dc             	mov    -0x24(%ebp),%eax
99f1de:	8b 4d ec             	mov    -0x14(%ebp),%ecx
99f1e1:	3b c1                	cmp    %ecx,%eax
99f1e3:	7e 1b                	jle    0x99f200
99f1e5:	83 bb c8 00 00 00 00 	cmpl   $0x0,0xc8(%ebx)
99f1ec:	75 12                	jne    0x99f200
99f1ee:	6a 00                	push   $0x0
99f1f0:	2b c1                	sub    %ecx,%eax
99f1f2:	50                   	push   %eax
99f1f3:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f1f6:	50                   	push   %eax
99f1f7:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f1fd:	8b 4d ec             	mov    -0x14(%ebp),%ecx
99f200:	8b 55 f4             	mov    -0xc(%ebp),%edx
99f203:	8b 45 8c             	mov    -0x74(%ebp),%eax
99f206:	3b d0                	cmp    %eax,%edx
99f208:	7e 2e                	jle    0x99f238
99f20a:	83 bb c8 00 00 00 00 	cmpl   $0x0,0xc8(%ebx)
99f211:	75 25                	jne    0x99f238
99f213:	2b 15 58 c7 d7 00    	sub    0xd7c758,%edx
99f219:	2b d1                	sub    %ecx,%edx
99f21b:	2b c2                	sub    %edx,%eax
99f21d:	3b c7                	cmp    %edi,%eax
99f21f:	7f 02                	jg     0x99f223
99f221:	8b c7                	mov    %edi,%eax
99f223:	6a 00                	push   $0x0
99f225:	2b c1                	sub    %ecx,%eax
99f227:	50                   	push   %eax
99f228:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f22b:	50                   	push   %eax
99f22c:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f232:	8b 4d ec             	mov    -0x14(%ebp),%ecx
99f235:	8b 45 8c             	mov    -0x74(%ebp),%eax
99f238:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
99f23c:	0f 84 87 00 00 00    	je     0x99f2c9
99f242:	a1 58 c7 d7 00       	mov    0xd7c758,%eax
99f247:	83 65 a4 00          	andl   $0x0,-0x5c(%ebp)
99f24b:	03 c1                	add    %ecx,%eax
99f24d:	6a 00                	push   $0x0
99f24f:	f7 d8                	neg    %eax
99f251:	50                   	push   %eax
99f252:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f255:	50                   	push   %eax
99f256:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f25c:	8d 45 dc             	lea    -0x24(%ebp),%eax
99f25f:	50                   	push   %eax
99f260:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f263:	50                   	push   %eax
99f264:	ff 15 04 3d d8 00    	call   *0xd83d04
99f26a:	85 c0                	test   %eax,%eax
99f26c:	75 38                	jne    0x99f2a6
99f26e:	83 bb e0 00 00 00 00 	cmpl   $0x0,0xe0(%ebx)
99f275:	8b 45 a8             	mov    -0x58(%ebp),%eax
99f278:	75 1c                	jne    0x99f296
99f27a:	f6 80 b0 00 00 00 01 	testb  $0x1,0xb0(%eax)
99f281:	75 13                	jne    0x99f296
99f283:	8b b8 c0 00 00 00    	mov    0xc0(%eax),%edi
99f289:	8d 75 ec             	lea    -0x14(%ebp),%esi
99f28c:	81 c7 94 00 00 00    	add    $0x94,%edi
99f292:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f293:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f294:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f295:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f296:	8d 4d ec             	lea    -0x14(%ebp),%ecx
99f299:	51                   	push   %ecx
99f29a:	ff 70 20             	push   0x20(%eax)
99f29d:	8d 45 ac             	lea    -0x54(%ebp),%eax
99f2a0:	50                   	push   %eax
99f2a1:	e8 ff 79 a9 ff       	call   0x436ca5
99f2a6:	8b 7d 80             	mov    -0x80(%ebp),%edi
99f2a9:	2b 3d 58 c7 d7 00    	sub    0xd7c758,%edi
99f2af:	03 7d ec             	add    -0x14(%ebp),%edi
99f2b2:	8b 45 84             	mov    -0x7c(%ebp),%eax
99f2b5:	89 7d 94             	mov    %edi,-0x6c(%ebp)
99f2b8:	39 45 9c             	cmp    %eax,-0x64(%ebp)
99f2bb:	0f 8f 64 01 00 00    	jg     0x99f425
99f2c1:	89 45 9c             	mov    %eax,-0x64(%ebp)
99f2c4:	e9 5c 01 00 00       	jmp    0x99f425
99f2c9:	2b 05 58 c7 d7 00    	sub    0xd7c758,%eax
99f2cf:	3b c8                	cmp    %eax,%ecx
99f2d1:	7c 89                	jl     0x99f25c
99f2d3:	8b 45 a0             	mov    -0x60(%ebp),%eax
99f2d6:	85 c0                	test   %eax,%eax
99f2d8:	7e 82                	jle    0x99f25c
99f2da:	48                   	dec    %eax
99f2db:	8d 8b cc 00 00 00    	lea    0xcc(%ebx),%ecx
99f2e1:	50                   	push   %eax
99f2e2:	e8 68 5f a6 ff       	call   0x40524f
99f2e7:	83 38 00             	cmpl   $0x0,(%eax)
99f2ea:	0f 84 6c ff ff ff    	je     0x99f25c
99f2f0:	6a 01                	push   $0x1
99f2f2:	6a 00                	push   $0x0
99f2f4:	ff 75 a0             	push   -0x60(%ebp)
99f2f7:	8d 8b cc 00 00 00    	lea    0xcc(%ebx),%ecx
99f2fd:	e8 ca e4 a8 ff       	call   0x42d7cc
99f302:	c7 45 a4 01 00 00 00 	movl   $0x1,-0x5c(%ebp)
99f309:	e9 38 01 00 00       	jmp    0x99f446
99f30e:	8b 45 e0             	mov    -0x20(%ebp),%eax
99f311:	8b 4d f0             	mov    -0x10(%ebp),%ecx
99f314:	3b c1                	cmp    %ecx,%eax
99f316:	7e 1b                	jle    0x99f333
99f318:	83 bb c8 00 00 00 00 	cmpl   $0x0,0xc8(%ebx)
99f31f:	75 12                	jne    0x99f333
99f321:	2b c1                	sub    %ecx,%eax
99f323:	50                   	push   %eax
99f324:	6a 00                	push   $0x0
99f326:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f329:	50                   	push   %eax
99f32a:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f330:	8b 4d f0             	mov    -0x10(%ebp),%ecx
99f333:	8b 55 f8             	mov    -0x8(%ebp),%edx
99f336:	8b 45 88             	mov    -0x78(%ebp),%eax
99f339:	3b d0                	cmp    %eax,%edx
99f33b:	7e 2e                	jle    0x99f36b
99f33d:	83 bb c8 00 00 00 00 	cmpl   $0x0,0xc8(%ebx)
99f344:	75 25                	jne    0x99f36b
99f346:	2b d1                	sub    %ecx,%edx
99f348:	2b 15 5c c7 d7 00    	sub    0xd7c75c,%edx
99f34e:	2b c2                	sub    %edx,%eax
99f350:	3b c6                	cmp    %esi,%eax
99f352:	7f 02                	jg     0x99f356
99f354:	8b c6                	mov    %esi,%eax
99f356:	2b c1                	sub    %ecx,%eax
99f358:	50                   	push   %eax
99f359:	6a 00                	push   $0x0
99f35b:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f35e:	50                   	push   %eax
99f35f:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f365:	8b 4d f0             	mov    -0x10(%ebp),%ecx
99f368:	8b 45 88             	mov    -0x78(%ebp),%eax
99f36b:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
99f36f:	74 1c                	je     0x99f38d
99f371:	a1 5c c7 d7 00       	mov    0xd7c75c,%eax
99f376:	83 65 a4 00          	andl   $0x0,-0x5c(%ebp)
99f37a:	03 c1                	add    %ecx,%eax
99f37c:	f7 d8                	neg    %eax
99f37e:	50                   	push   %eax
99f37f:	6a 00                	push   $0x0
99f381:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f384:	50                   	push   %eax
99f385:	ff 15 4c 40 d8 00    	call   *0xd8404c
99f38b:	eb 27                	jmp    0x99f3b4
99f38d:	2b 05 5c c7 d7 00    	sub    0xd7c75c,%eax
99f393:	3b c8                	cmp    %eax,%ecx
99f395:	7c 1d                	jl     0x99f3b4
99f397:	8b 45 a0             	mov    -0x60(%ebp),%eax
99f39a:	85 c0                	test   %eax,%eax
99f39c:	7e 16                	jle    0x99f3b4
99f39e:	48                   	dec    %eax
99f39f:	8d 8b cc 00 00 00    	lea    0xcc(%ebx),%ecx
99f3a5:	50                   	push   %eax
99f3a6:	e8 a4 5e a6 ff       	call   0x40524f
99f3ab:	83 38 00             	cmpl   $0x0,(%eax)
99f3ae:	0f 85 3c ff ff ff    	jne    0x99f2f0
99f3b4:	8d 45 dc             	lea    -0x24(%ebp),%eax
99f3b7:	50                   	push   %eax
99f3b8:	8d 45 ec             	lea    -0x14(%ebp),%eax
99f3bb:	50                   	push   %eax
99f3bc:	ff 15 04 3d d8 00    	call   *0xd83d04
99f3c2:	85 c0                	test   %eax,%eax
99f3c4:	75 3b                	jne    0x99f401
99f3c6:	83 bb e0 00 00 00 00 	cmpl   $0x0,0xe0(%ebx)
99f3cd:	8b 45 a8             	mov    -0x58(%ebp),%eax
99f3d0:	75 1f                	jne    0x99f3f1
99f3d2:	f6 80 b0 00 00 00 01 	testb  $0x1,0xb0(%eax)
99f3d9:	75 16                	jne    0x99f3f1
99f3db:	8b b8 c0 00 00 00    	mov    0xc0(%eax),%edi
99f3e1:	8d 75 ec             	lea    -0x14(%ebp),%esi
99f3e4:	81 c7 94 00 00 00    	add    $0x94,%edi
99f3ea:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f3eb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f3ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f3ed:	a5                   	movsl  %ds:(%esi),%es:(%edi)
99f3ee:	8b 7d 94             	mov    -0x6c(%ebp),%edi
99f3f1:	8d 4d ec             	lea    -0x14(%ebp),%ecx
99f3f4:	51                   	push   %ecx
99f3f5:	ff 70 20             	push   0x20(%eax)
99f3f8:	8d 45 ac             	lea    -0x54(%ebp),%eax
99f3fb:	50                   	push   %eax
99f3fc:	e8 a4 78 a9 ff       	call   0x436ca5
99f401:	8b 45 f0             	mov    -0x10(%ebp),%eax
99f404:	2b 05 5c c7 d7 00    	sub    0xd7c75c,%eax
99f40a:	03 45 84             	add    -0x7c(%ebp),%eax
99f40d:	89 45 98             	mov    %eax,-0x68(%ebp)
99f410:	8b 45 80             	mov    -0x80(%ebp),%eax
99f413:	39 45 9c             	cmp    %eax,-0x64(%ebp)
99f416:	7f 0d                	jg     0x99f425
99f418:	89 45 9c             	mov    %eax,-0x64(%ebp)
99f41b:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
99f41f:	0f 85 8e 00 00 00    	jne    0x99f4b3
99f425:	8b 45 a8             	mov    -0x58(%ebp),%eax
99f428:	8d 4d ac             	lea    -0x54(%ebp),%ecx
99f42b:	51                   	push   %ecx
99f42c:	8b 00                	mov    (%eax),%eax
99f42e:	8b b0 94 01 00 00    	mov    0x194(%eax),%esi
99f434:	8b ce                	mov    %esi,%ecx
99f436:	e8 2a d2 a8 ff       	call   0x42c665
99f43b:	8b 4d a8             	mov    -0x58(%ebp),%ecx
99f43e:	ff d6                	call   *%esi
99f440:	eb 71                	jmp    0x99f4b3
99f442:	85 c9                	test   %ecx,%ecx
99f444:	75 6d                	jne    0x99f4b3
99f446:	8b 45 9c             	mov    -0x64(%ebp),%eax
99f449:	85 c0                	test   %eax,%eax
99f44b:	74 66                	je     0x99f4b3
99f44d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
99f451:	8b 4d 90             	mov    -0x70(%ebp),%ecx
99f454:	74 2e                	je     0x99f484
99f456:	2b 05 5c c7 d7 00    	sub    0xd7c75c,%eax
99f45c:	03 f0                	add    %eax,%esi
99f45e:	8b 01                	mov    (%ecx),%eax
99f460:	89 75 98             	mov    %esi,-0x68(%ebp)
99f463:	3b c7                	cmp    %edi,%eax
99f465:	7f 02                	jg     0x99f469
99f467:	8b c7                	mov    %edi,%eax
99f469:	89 01                	mov    %eax,(%ecx)
99f46b:	8b 41 04             	mov    0x4(%ecx),%eax
99f46e:	3b c6                	cmp    %esi,%eax
99f470:	7f 02                	jg     0x99f474
99f472:	8b c6                	mov    %esi,%eax
99f474:	89 41 04             	mov    %eax,0x4(%ecx)
99f477:	8b 3d 58 c7 d7 00    	mov    0xd7c758,%edi
99f47d:	f7 df                	neg    %edi
99f47f:	89 7d 94             	mov    %edi,-0x6c(%ebp)
99f482:	eb 2b                	jmp    0x99f4af
99f484:	2b 05 58 c7 d7 00    	sub    0xd7c758,%eax
99f48a:	03 f8                	add    %eax,%edi
99f48c:	8b 01                	mov    (%ecx),%eax
99f48e:	89 7d 94             	mov    %edi,-0x6c(%ebp)
99f491:	3b c7                	cmp    %edi,%eax
99f493:	7f 02                	jg     0x99f497
99f495:	8b c7                	mov    %edi,%eax
99f497:	89 01                	mov    %eax,(%ecx)
99f499:	8b 41 04             	mov    0x4(%ecx),%eax
99f49c:	3b c6                	cmp    %esi,%eax
99f49e:	7f 02                	jg     0x99f4a2
99f4a0:	8b c6                	mov    %esi,%eax
99f4a2:	89 41 04             	mov    %eax,0x4(%ecx)
99f4a5:	a1 5c c7 d7 00       	mov    0xd7c75c,%eax
99f4aa:	f7 d8                	neg    %eax
99f4ac:	89 45 98             	mov    %eax,-0x68(%ebp)
99f4af:	83 65 9c 00          	andl   $0x0,-0x64(%ebp)
99f4b3:	8b 4d a0             	mov    -0x60(%ebp),%ecx
99f4b6:	8b 75 98             	mov    -0x68(%ebp),%esi
99f4b9:	41                   	inc    %ecx
99f4ba:	89 4d a0             	mov    %ecx,-0x60(%ebp)
99f4bd:	3b 8b d4 00 00 00    	cmp    0xd4(%ebx),%ecx
99f4c3:	0f 8c 42 fc ff ff    	jl     0x99f10b
99f4c9:	8b 45 ac             	mov    -0x54(%ebp),%eax
99f4cc:	83 bb e0 00 00 00 00 	cmpl   $0x0,0xe0(%ebx)
99f4d3:	75 0b                	jne    0x99f4e0
99f4d5:	85 c0                	test   %eax,%eax
99f4d7:	74 07                	je     0x99f4e0
99f4d9:	50                   	push   %eax
99f4da:	ff 15 b8 3f d8 00    	call   *0xd83fb8
99f4e0:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
99f4e4:	8d 45 cc             	lea    -0x34(%ebp),%eax
99f4e7:	83 65 d0 00          	andl   $0x0,-0x30(%ebp)
99f4eb:	83 65 d4 00          	andl   $0x0,-0x2c(%ebp)
99f4ef:	83 65 d8 00          	andl   $0x0,-0x28(%ebp)
99f4f3:	50                   	push   %eax
99f4f4:	ff 15 50 40 d8 00    	call   *0xd84050
99f4fa:	8b 03                	mov    (%ebx),%eax
99f4fc:	8d 4d cc             	lea    -0x34(%ebp),%ecx
99f4ff:	8b 7d 10             	mov    0x10(%ebp),%edi
99f502:	57                   	push   %edi
99f503:	51                   	push   %ecx
99f504:	8b b0 70 01 00 00    	mov    0x170(%eax),%esi
99f50a:	8b ce                	mov    %esi,%ecx
99f50c:	e8 54 d1 a8 ff       	call   0x42c665
99f511:	8b cb                	mov    %ebx,%ecx
99f513:	ff d6                	call   *%esi
99f515:	8b 4d 0c             	mov    0xc(%ebp),%ecx
99f518:	85 c9                	test   %ecx,%ecx
99f51a:	74 04                	je     0x99f520
99f51c:	85 ff                	test   %edi,%edi
99f51e:	75 13                	jne    0x99f533
99f520:	8b 55 90             	mov    -0x70(%ebp),%edx