44f162:	53                   	push   %ebx
44f163:	47                   	inc    %edi
44f164:	57                   	push   %edi
44f165:	03 ce                	add    %esi,%ecx
44f167:	e8 e0 dd ff ff       	call   0x44cf4c
44f16c:	8b 75 0c             	mov    0xc(%ebp),%esi
44f16f:	8b ce                	mov    %esi,%ecx
44f171:	e8 aa 3a fc ff       	call   0x412c20
44f176:	89 7e 0c             	mov    %edi,0xc(%esi)
44f179:	89 1e                	mov    %ebx,(%esi)
44f17b:	5f                   	pop    %edi
44f17c:	5e                   	pop    %esi
44f17d:	33 c0                	xor    %eax,%eax
44f17f:	5b                   	pop    %ebx
44f180:	5d                   	pop    %ebp
44f181:	c2 08 00             	ret    $0x8
44f184:	55                   	push   %ebp
44f185:	8b ec                	mov    %esp,%ebp
44f187:	b8 00 00 01 00       	mov    $0x10000,%eax
44f18c:	e8 0f 07 fe ff       	call   0x42f8a0
44f191:	53                   	push   %ebx
44f192:	56                   	push   %esi
44f193:	57                   	push   %edi
44f194:	8b 7d 08             	mov    0x8(%ebp),%edi
44f197:	8b d9                	mov    %ecx,%ebx
44f199:	83 7f 08 01          	cmpl   $0x1,0x8(%edi)
44f19d:	76 3b                	jbe    0x44f1da
44f19f:	8b 47 04             	mov    0x4(%edi),%eax
44f1a2:	8b 48 04             	mov    0x4(%eax),%ecx
44f1a5:	e8 dc e0 fb ff       	call   0x40d286
44f1aa:	83 f8 01             	cmp    $0x1,%eax
44f1ad:	75 2b                	jne    0x44f1da
44f1af:	8b 47 04             	mov    0x4(%edi),%eax
44f1b2:	8b 30                	mov    (%eax),%esi
44f1b4:	8b ce                	mov    %esi,%ecx
44f1b6:	e8 b1 a1 fb ff       	call   0x40936c
44f1bb:	8b 4e 08             	mov    0x8(%esi),%ecx
44f1be:	8d 85 00 00 ff ff    	lea    -0x10000(%ebp),%eax
44f1c4:	8b 09                	mov    (%ecx),%ecx
44f1c6:	50                   	push   %eax
44f1c7:	ba ff 7f 00 00       	mov    $0x7fff,%edx
44f1cc:	e8 ea 7c ff ff       	call   0x446ebb
44f1d1:	59                   	pop    %ecx
44f1d2:	8d 85 00 00 ff ff    	lea    -0x10000(%ebp),%eax
44f1d8:	eb 11                	jmp    0x44f1eb
44f1da:	8b 47 04             	mov    0x4(%edi),%eax
44f1dd:	8b 30                	mov    (%eax),%esi
44f1df:	8b ce                	mov    %esi,%ecx
44f1e1:	e8 86 a1 fb ff       	call   0x40936c
44f1e6:	8b 46 08             	mov    0x8(%esi),%eax
44f1e9:	8b 00                	mov    (%eax),%eax
44f1eb:	68 ff 7f 00 00       	push   $0x7fff
44f1f0:	8d 8d 00 00 ff ff    	lea    -0x10000(%ebp),%ecx
44f1f6:	51                   	push   %ecx
44f1f7:	50                   	push   %eax
44f1f8:	ff 15 b8 d2 48 00    	call   *0x48d2b8
44f1fe:	85 c0                	test   %eax,%eax
44f200:	74 09                	je     0x44f20b
44f202:	8d 85 00 00 ff ff    	lea    -0x10000(%ebp),%eax
44f208:	50                   	push   %eax
44f209:	eb 21                	jmp    0x44f22c
44f20b:	8b 03                	mov    (%ebx),%eax
44f20d:	6a 00                	push   $0x0
44f20f:	8b 48 04             	mov    0x4(%eax),%ecx
44f212:	6a 01                	push   $0x1
44f214:	03 cb                	add    %ebx,%ecx
44f216:	e8 31 dd ff ff       	call   0x44cf4c
44f21b:	8b 47 04             	mov    0x4(%edi),%eax
44f21e:	8b 30                	mov    (%eax),%esi
44f220:	8b ce                	mov    %esi,%ecx
44f222:	e8 45 a1 fb ff       	call   0x40936c
44f227:	8b 46 08             	mov    0x8(%esi),%eax
44f22a:	ff 30                	push   (%eax)
44f22c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
44f22f:	e8 85 db fb ff       	call   0x40cdb9
44f234:	5f                   	pop    %edi
44f235:	5e                   	pop    %esi
44f236:	33 c0                	xor    %eax,%eax
44f238:	5b                   	pop    %ebx
44f239:	c9                   	leave
44f23a:	c2 08 00             	ret    $0x8
44f23d:	55                   	push   %ebp
44f23e:	8b ec                	mov    %esp,%ebp
44f240:	83 e4 f8             	and    $0xfffffff8,%esp
44f243:	81 ec 4c 02 00 00    	sub    $0x24c,%esp
44f249:	8b 45 08             	mov    0x8(%ebp),%eax
44f24c:	53                   	push   %ebx
44f24d:	8b 40 04             	mov    0x4(%eax),%eax
44f250:	56                   	push   %esi
44f251:	8b 30                	mov    (%eax),%esi
44f253:	57                   	push   %edi
44f254:	8b f9                	mov    %ecx,%edi
44f256:	8b ce                	mov    %esi,%ecx
44f258:	e8 0f a1 fb ff       	call   0x40936c
44f25d:	8b 56 08             	mov    0x8(%esi),%edx
44f260:	6a ff                	push   $0xffffffff
44f262:	8b 02                	mov    (%edx),%eax
44f264:	89 44 24 3c          	mov    %eax,0x3c(%esp)
44f268:	8b 42 04             	mov    0x4(%edx),%eax
44f26b:	6a ff                	push   $0xffffffff
44f26d:	89 44 24 44          	mov    %eax,0x44(%esp)
44f271:	8b 42 08             	mov    0x8(%edx),%eax
44f274:	6a ff                	push   $0xffffffff
44f276:	89 44 24 4c          	mov    %eax,0x4c(%esp)
44f27a:	8b 42 0c             	mov    0xc(%edx),%eax
44f27d:	6a 01                	push   $0x1
44f27f:	6a 02                	push   $0x2
44f281:	89 44 24 58          	mov    %eax,0x58(%esp)
44f285:	ff 00                	incl   (%eax)
44f287:	8b 74 24 50          	mov    0x50(%esp),%esi
44f28b:	bb cc 3c 4b 00       	mov    $0x4b3ccc,%ebx
44f290:	53                   	push   %ebx
44f291:	8d 4c 24 50          	lea    0x50(%esp),%ecx
44f295:	e8 77 2c ff ff       	call   0x441f11
44f29a:	3b c6                	cmp    %esi,%eax
44f29c:	75 0a                	jne    0x44f2a8
44f29e:	53                   	push   %ebx
44f29f:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
44f2a3:	e8 e4 5e fb ff       	call   0x40518c
44f2a8:	8b 75 0c             	mov    0xc(%ebp),%esi
44f2ab:	68 00 dc 49 00       	push   $0x49dc00
44f2b0:	8b ce                	mov    %esi,%ecx
44f2b2:	e8 02 db fb ff       	call   0x40cdb9
44f2b7:	8b 07                	mov    (%edi),%eax
44f2b9:	33 db                	xor    %ebx,%ebx
44f2bb:	8b 48 04             	mov    0x4(%eax),%ecx
44f2be:	53                   	push   %ebx
44f2bf:	6a 01                	push   $0x1
44f2c1:	03 cf                	add    %edi,%ecx
44f2c3:	e8 84 dc ff ff       	call   0x44cf4c
44f2c8:	8d 4c 24 38          	lea    0x38(%esp),%ecx
44f2cc:	e8 43 72 ff ff       	call   0x446514
44f2d1:	84 c0                	test   %al,%al
44f2d3:	0f 84 82 02 00 00    	je     0x44f55b
44f2d9:	53                   	push   %ebx
44f2da:	ff 15 3c d8 48 00    	call   *0x48d83c
44f2e0:	8d 44 24 0c          	lea    0xc(%esp),%eax
44f2e4:	50                   	push   %eax
44f2e5:	68 ec d8 48 00       	push   $0x48d8ec
44f2ea:	6a 01                	push   $0x1
44f2ec:	53                   	push   %ebx
44f2ed:	68 7c da 48 00       	push   $0x48da7c
44f2f2:	ff 15 2c d8 48 00    	call   *0x48d82c
44f2f8:	85 c0                	test   %eax,%eax
44f2fa:	0f 88 55 02 00 00    	js     0x44f555
44f300:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f304:	8d 54 24 24          	lea    0x24(%esp),%edx
44f308:	8b 08                	mov    (%eax),%ecx
44f30a:	52                   	push   %edx
44f30b:	68 4c d9 48 00       	push   $0x48d94c
44f310:	50                   	push   %eax
44f311:	ff 11                	call   *(%ecx)
44f313:	85 c0                	test   %eax,%eax
44f315:	0f 88 30 02 00 00    	js     0x44f54b
44f31b:	8b 44 24 24          	mov    0x24(%esp),%eax
44f31f:	53                   	push   %ebx
44f320:	ff 74 24 3c          	push   0x3c(%esp)
44f324:	8b 08                	mov    (%eax),%ecx
44f326:	50                   	push   %eax
44f327:	ff 51 14             	call   *0x14(%ecx)
44f32a:	85 c0                	test   %eax,%eax
44f32c:	0f 88 0f 02 00 00    	js     0x44f541
44f332:	6a 07                	push   $0x7
44f334:	6a 01                	push   $0x1
44f336:	56                   	push   %esi
44f337:	e8 14 cd fc ff       	call   0x41c050
44f33c:	8b 44 24 18          	mov    0x18(%esp),%eax
44f340:	83 c4 0c             	add    $0xc,%esp
44f343:	8b 08                	mov    (%eax),%ecx
44f345:	6a 02                	push   $0x2
44f347:	53                   	push   %ebx
44f348:	bb 04 01 00 00       	mov    $0x104,%ebx
44f34d:	53                   	push   %ebx
44f34e:	8d 54 24 5c          	lea    0x5c(%esp),%edx
44f352:	52                   	push   %edx
44f353:	50                   	push   %eax
44f354:	ff 51 0c             	call   *0xc(%ecx)
44f357:	8d 44 24 50          	lea    0x50(%esp),%eax
44f35b:	50                   	push   %eax
44f35c:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
44f360:	e8 b4 da fb ff       	call   0x40ce19
44f365:	50                   	push   %eax
44f366:	8d 4c 24 14          	lea    0x14(%esp),%ecx
44f36a:	e8 d9 9c fb ff       	call   0x409048
44f36f:	6a 00                	push   $0x0
44f371:	6a 01                	push   $0x1
44f373:	8d 44 24 18          	lea    0x18(%esp),%eax
44f377:	50                   	push   %eax
44f378:	56                   	push   %esi
44f379:	e8 52 36 fc ff       	call   0x4129d0
44f37e:	83 c4 10             	add    $0x10,%esp
44f381:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f385:	e8 96 38 fc ff       	call   0x412c20
44f38a:	8d 4c 24 28          	lea    0x28(%esp),%ecx
44f38e:	e8 a4 d7 fb ff       	call   0x40cb37
44f393:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f397:	53                   	push   %ebx
44f398:	8b 08                	mov    (%eax),%ecx
44f39a:	8d 54 24 54          	lea    0x54(%esp),%edx
44f39e:	52                   	push   %edx
44f39f:	50                   	push   %eax
44f3a0:	ff 51 20             	call   *0x20(%ecx)
44f3a3:	8d 44 24 50          	lea    0x50(%esp),%eax
44f3a7:	50                   	push   %eax
44f3a8:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
44f3ac:	e8 68 da fb ff       	call   0x40ce19
44f3b1:	50                   	push   %eax
44f3b2:	8d 4c 24 14          	lea    0x14(%esp),%ecx
44f3b6:	e8 8d 9c fb ff       	call   0x409048
44f3bb:	6a 01                	push   $0x1
44f3bd:	6a 01                	push   $0x1
44f3bf:	8d 44 24 18          	lea    0x18(%esp),%eax
44f3c3:	50                   	push   %eax
44f3c4:	56                   	push   %esi
44f3c5:	e8 06 36 fc ff       	call   0x4129d0
44f3ca:	83 c4 10             	add    $0x10,%esp
44f3cd:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f3d1:	e8 4a 38 fc ff       	call   0x412c20
44f3d6:	8d 4c 24 28          	lea    0x28(%esp),%ecx
44f3da:	e8 58 d7 fb ff       	call   0x40cb37
44f3df:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f3e3:	53                   	push   %ebx
44f3e4:	8b 08                	mov    (%eax),%ecx
44f3e6:	8d 54 24 54          	lea    0x54(%esp),%edx
44f3ea:	52                   	push   %edx
44f3eb:	50                   	push   %eax
44f3ec:	ff 51 28             	call   *0x28(%ecx)
44f3ef:	8d 44 24 50          	lea    0x50(%esp),%eax
44f3f3:	50                   	push   %eax
44f3f4:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
44f3f8:	e8 1c da fb ff       	call   0x40ce19
44f3fd:	50                   	push   %eax
44f3fe:	8d 4c 24 14          	lea    0x14(%esp),%ecx
44f402:	e8 41 9c fb ff       	call   0x409048
44f407:	6a 02                	push   $0x2
44f409:	6a 01                	push   $0x1
44f40b:	8d 44 24 18          	lea    0x18(%esp),%eax
44f40f:	50                   	push   %eax
44f410:	56                   	push   %esi
44f411:	e8 ba 35 fc ff       	call   0x4129d0
44f416:	83 c4 10             	add    $0x10,%esp
44f419:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f41d:	e8 fe 37 fc ff       	call   0x412c20
44f422:	8d 4c 24 28          	lea    0x28(%esp),%ecx
44f426:	e8 0c d7 fb ff       	call   0x40cb37
44f42b:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f42f:	53                   	push   %ebx
44f430:	8b 08                	mov    (%eax),%ecx
44f432:	8d 54 24 54          	lea    0x54(%esp),%edx
44f436:	52                   	push   %edx
44f437:	50                   	push   %eax
44f438:	ff 51 18             	call   *0x18(%ecx)
44f43b:	8d 44 24 50          	lea    0x50(%esp),%eax
44f43f:	50                   	push   %eax
44f440:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
44f444:	e8 d0 d9 fb ff       	call   0x40ce19
44f449:	50                   	push   %eax
44f44a:	8d 4c 24 14          	lea    0x14(%esp),%ecx
44f44e:	e8 f5 9b fb ff       	call   0x409048
44f453:	6a 03                	push   $0x3
44f455:	6a 01                	push   $0x1
44f457:	8d 44 24 18          	lea    0x18(%esp),%eax
44f45b:	50                   	push   %eax
44f45c:	56                   	push   %esi
44f45d:	e8 6e 35 fc ff       	call   0x4129d0
44f462:	83 c4 10             	add    $0x10,%esp
44f465:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f469:	e8 b2 37 fc ff       	call   0x412c20
44f46e:	8d 4c 24 28          	lea    0x28(%esp),%ecx
44f472:	e8 c0 d6 fb ff       	call   0x40cb37
44f477:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f47b:	8d 54 24 4c          	lea    0x4c(%esp),%edx
44f47f:	8b 08                	mov    (%eax),%ecx
44f481:	52                   	push   %edx
44f482:	53                   	push   %ebx
44f483:	8d 54 24 58          	lea    0x58(%esp),%edx
44f487:	52                   	push   %edx
44f488:	50                   	push   %eax
44f489:	ff 51 40             	call   *0x40(%ecx)
44f48c:	8d 44 24 50          	lea    0x50(%esp),%eax
44f490:	50                   	push   %eax
44f491:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
44f495:	e8 7f d9 fb ff       	call   0x40ce19
44f49a:	50                   	push   %eax
44f49b:	8d 4c 24 14          	lea    0x14(%esp),%ecx
44f49f:	e8 a4 9b fb ff       	call   0x409048
44f4a4:	6a 04                	push   $0x4
44f4a6:	6a 01                	push   $0x1
44f4a8:	8d 44 24 18          	lea    0x18(%esp),%eax
44f4ac:	50                   	push   %eax
44f4ad:	56                   	push   %esi
44f4ae:	e8 1d 35 fc ff       	call   0x4129d0
44f4b3:	83 c4 10             	add    $0x10,%esp
44f4b6:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f4ba:	e8 61 37 fc ff       	call   0x412c20
44f4bf:	8d 4c 24 28          	lea    0x28(%esp),%ecx
44f4c3:	e8 6f d6 fb ff       	call   0x40cb37
44f4c8:	8b 44 24 4c          	mov    0x4c(%esp),%eax
44f4cc:	89 44 24 10          	mov    %eax,0x10(%esp)
44f4d0:	33 c0                	xor    %eax,%eax
44f4d2:	40                   	inc    %eax
44f4d3:	6a 05                	push   $0x5
44f4d5:	50                   	push   %eax
44f4d6:	89 44 24 24          	mov    %eax,0x24(%esp)
44f4da:	8d 44 24 18          	lea    0x18(%esp),%eax
44f4de:	50                   	push   %eax
44f4df:	33 db                	xor    %ebx,%ebx
44f4e1:	56                   	push   %esi
44f4e2:	89 5c 24 28          	mov    %ebx,0x28(%esp)
44f4e6:	e8 e5 34 fc ff       	call   0x4129d0
44f4eb:	83 c4 10             	add    $0x10,%esp
44f4ee:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f4f2:	e8 29 37 fc ff       	call   0x412c20
44f4f7:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f4fb:	8d 54 24 48          	lea    0x48(%esp),%edx
44f4ff:	8b 08                	mov    (%eax),%ecx
44f501:	52                   	push   %edx
44f502:	50                   	push   %eax
44f503:	ff 51 38             	call   *0x38(%ecx)
44f506:	8b 44 24 48          	mov    0x48(%esp),%eax
44f50a:	89 44 24 10          	mov    %eax,0x10(%esp)
44f50e:	33 c0                	xor    %eax,%eax
44f510:	89 5c 24 18          	mov    %ebx,0x18(%esp)
44f514:	40                   	inc    %eax
44f515:	6a 06                	push   $0x6
44f517:	50                   	push   %eax
44f518:	89 44 24 24          	mov    %eax,0x24(%esp)
44f51c:	8d 44 24 18          	lea    0x18(%esp),%eax
44f520:	50                   	push   %eax
44f521:	56                   	push   %esi
44f522:	e8 a9 34 fc ff       	call   0x4129d0
44f527:	83 c4 10             	add    $0x10,%esp
44f52a:	8d 4c 24 10          	lea    0x10(%esp),%ecx
44f52e:	e8 ed 36 fc ff       	call   0x412c20
44f533:	8b 07                	mov    (%edi),%eax
44f535:	53                   	push   %ebx
44f536:	8b 48 04             	mov    0x4(%eax),%ecx
44f539:	53                   	push   %ebx
44f53a:	03 cf                	add    %edi,%ecx
44f53c:	e8 0b da ff ff       	call   0x44cf4c
44f541:	8b 44 24 24          	mov    0x24(%esp),%eax
44f545:	50                   	push   %eax
44f546:	8b 08                	mov    (%eax),%ecx
44f548:	ff 51 08             	call   *0x8(%ecx)
44f54b:	8b 44 24 0c          	mov    0xc(%esp),%eax
44f54f:	50                   	push   %eax
44f550:	8b 08                	mov    (%eax),%ecx
44f552:	ff 51 08             	call   *0x8(%ecx)
44f555:	ff 15 40 d8 48 00    	call   *0x48d840
44f55b:	8d 4c 24 38          	lea    0x38(%esp),%ecx