54f231:	8b ec                	mov    %esp,%ebp
54f233:	83 ec 0c             	sub    $0xc,%esp
54f236:	a1 d4 89 72 00       	mov    0x7289d4,%eax
54f23b:	33 c5                	xor    %ebp,%eax
54f23d:	89 45 fc             	mov    %eax,-0x4(%ebp)
54f240:	8b 45 18             	mov    0x18(%ebp),%eax
54f243:	56                   	push   %esi
54f244:	8b 75 08             	mov    0x8(%ebp),%esi
54f247:	57                   	push   %edi
54f248:	33 ff                	xor    %edi,%edi
54f24a:	89 45 f8             	mov    %eax,-0x8(%ebp)
54f24d:	85 f6                	test   %esi,%esi
54f24f:	0f 84 fa 00 00 00    	je     0x54f34f
54f255:	53                   	push   %ebx
54f256:	33 db                	xor    %ebx,%ebx
54f258:	89 5d f4             	mov    %ebx,-0xc(%ebp)
54f25b:	85 c0                	test   %eax,%eax
54f25d:	0f 84 8c 00 00 00    	je     0x54f2ef
54f263:	8b 46 04             	mov    0x4(%esi),%eax
54f266:	6a 04                	push   $0x4
54f268:	50                   	push   %eax
54f269:	8b 08                	mov    (%eax),%ecx
54f26b:	8b 41 1c             	mov    0x1c(%ecx),%eax
54f26e:	ff d0                	call   *%eax
54f270:	8b f8                	mov    %eax,%edi
54f272:	83 c4 08             	add    $0x8,%esp
54f275:	85 ff                	test   %edi,%edi
54f277:	75 76                	jne    0x54f2ef
54f279:	38 5e 2b             	cmp    %bl,0x2b(%esi)
54f27c:	75 04                	jne    0x54f282
54f27e:	c6 46 2b 01          	movb   $0x1,0x2b(%esi)
54f282:	6a 00                	push   $0x0
54f284:	6a 00                	push   $0x0
54f286:	ff 75 f8             	push   -0x8(%ebp)
54f289:	ff 75 14             	push   0x14(%ebp)
54f28c:	ff 75 10             	push   0x10(%ebp)
54f28f:	6a 00                	push   $0x0
54f291:	6a 00                	push   $0x0
54f293:	6a 00                	push   $0x0
54f295:	ff 75 0c             	push   0xc(%ebp)
54f298:	56                   	push   %esi
54f299:	e8 e2 fd ff ff       	call   0x54f080
54f29e:	8b f8                	mov    %eax,%edi
54f2a0:	83 c4 28             	add    $0x28,%esp
54f2a3:	85 ff                	test   %edi,%edi
54f2a5:	75 48                	jne    0x54f2ef
54f2a7:	8b 46 04             	mov    0x4(%esi),%eax
54f2aa:	c7 45 f8 ff ff ff ff 	movl   $0xffffffff,-0x8(%ebp)
54f2b1:	8b 08                	mov    (%eax),%ecx
54f2b3:	85 c9                	test   %ecx,%ecx
54f2b5:	74 30                	je     0x54f2e7
54f2b7:	8d 55 f8             	lea    -0x8(%ebp),%edx
54f2ba:	52                   	push   %edx
54f2bb:	6a 0a                	push   $0xa
54f2bd:	50                   	push   %eax
54f2be:	8b 41 28             	mov    0x28(%ecx),%eax
54f2c1:	ff d0                	call   *%eax
54f2c3:	83 c4 0c             	add    $0xc,%esp
54f2c6:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
54f2ca:	75 1b                	jne    0x54f2e7
54f2cc:	39 5e 14             	cmp    %ebx,0x14(%esi)
54f2cf:	7c 1e                	jl     0x54f2ef
54f2d1:	7f 05                	jg     0x54f2d8
54f2d3:	39 5e 10             	cmp    %ebx,0x10(%esi)
54f2d6:	72 17                	jb     0x54f2ef
54f2d8:	6a 00                	push   $0x0
54f2da:	6a 00                	push   $0x0
54f2dc:	56                   	push   %esi
54f2dd:	e8 3e 02 01 00       	call   0x55f520
54f2e2:	83 c4 0c             	add    $0xc,%esp
54f2e5:	eb 08                	jmp    0x54f2ef
54f2e7:	bb 01 00 00 00       	mov    $0x1,%ebx
54f2ec:	89 5d f4             	mov    %ebx,-0xc(%ebp)
54f2ef:	53                   	push   %ebx
54f2f0:	56                   	push   %esi
54f2f1:	e8 8a f5 00 00       	call   0x55e880
54f2f6:	8b 5e 08             	mov    0x8(%esi),%ebx
54f2f9:	83 c4 08             	add    $0x8,%esp
54f2fc:	8b 03                	mov    (%ebx),%eax
54f2fe:	85 c0                	test   %eax,%eax
54f300:	74 0f                	je     0x54f311
54f302:	8b 40 04             	mov    0x4(%eax),%eax
54f305:	53                   	push   %ebx
54f306:	ff d0                	call   *%eax
54f308:	83 c4 04             	add    $0x4,%esp
54f30b:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
54f311:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
54f315:	5b                   	pop    %ebx
54f316:	74 26                	je     0x54f33e
54f318:	a1 70 00 73 00       	mov    0x730070,%eax
54f31d:	85 c0                	test   %eax,%eax
54f31f:	74 02                	je     0x54f323
54f321:	ff d0                	call   *%eax
54f323:	8b 06                	mov    (%esi),%eax
54f325:	6a 00                	push   $0x0
54f327:	ff 76 6c             	push   0x6c(%esi)
54f32a:	50                   	push   %eax
54f32b:	8b 40 1c             	mov    0x1c(%eax),%eax
54f32e:	ff d0                	call   *%eax
54f330:	a1 74 00 73 00       	mov    0x730074,%eax
54f335:	83 c4 0c             	add    $0xc,%esp
54f338:	85 c0                	test   %eax,%eax
54f33a:	74 02                	je     0x54f33e
54f33c:	ff d0                	call   *%eax
54f33e:	ff 76 20             	push   0x20(%esi)
54f341:	e8 4a ba f9 ff       	call   0x4ead90
54f346:	56                   	push   %esi
54f347:	e8 44 ba f9 ff       	call   0x4ead90
54f34c:	83 c4 08             	add    $0x8,%esp
54f34f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
54f352:	8b c7                	mov    %edi,%eax
54f354:	5f                   	pop    %edi
54f355:	33 cd                	xor    %ebp,%ecx
54f357:	5e                   	pop    %esi
54f358:	e8 7d 21 09 00       	call   0x5e14da
54f35d:	8b e5                	mov    %ebp,%esp
54f35f:	5d                   	pop    %ebp
54f360:	c3                   	ret
54f361:	cc                   	int3
54f362:	cc                   	int3
54f363:	cc                   	int3
54f364:	cc                   	int3
54f365:	cc                   	int3
54f366:	cc                   	int3
54f367:	cc                   	int3
54f368:	cc                   	int3
54f369:	cc                   	int3
54f36a:	cc                   	int3
54f36b:	cc                   	int3
54f36c:	cc                   	int3
54f36d:	cc                   	int3
54f36e:	cc                   	int3
54f36f:	cc                   	int3
54f370:	55                   	push   %ebp
54f371:	8b ec                	mov    %esp,%ebp
54f373:	8b 45 14             	mov    0x14(%ebp),%eax
54f376:	3b 45 08             	cmp    0x8(%ebp),%eax
54f379:	7c 2a                	jl     0x54f3a5
54f37b:	a1 70 00 73 00       	mov    0x730070,%eax
54f380:	85 c0                	test   %eax,%eax
54f382:	74 02                	je     0x54f386
54f384:	ff d0                	call   *%eax
54f386:	6a 00                	push   $0x0
54f388:	6a 00                	push   $0x0
54f38a:	6a 00                	push   $0x0
54f38c:	ff 75 10             	push   0x10(%ebp)
54f38f:	ff 75 0c             	push   0xc(%ebp)
54f392:	e8 29 15 f9 ff       	call   0x4e08c0
54f397:	a1 74 00 73 00       	mov    0x730074,%eax
54f39c:	83 c4 14             	add    $0x14,%esp
54f39f:	85 c0                	test   %eax,%eax
54f3a1:	74 02                	je     0x54f3a5
54f3a3:	ff d0                	call   *%eax
54f3a5:	33 c0                	xor    %eax,%eax
54f3a7:	5d                   	pop    %ebp
54f3a8:	c3                   	ret
54f3a9:	cc                   	int3
54f3aa:	cc                   	int3
54f3ab:	cc                   	int3
54f3ac:	cc                   	int3
54f3ad:	cc                   	int3
54f3ae:	cc                   	int3
54f3af:	cc                   	int3
54f3b0:	55                   	push   %ebp
54f3b1:	8b ec                	mov    %esp,%ebp
54f3b3:	56                   	push   %esi
54f3b4:	8b 75 08             	mov    0x8(%ebp),%esi
54f3b7:	80 7e 2c 00          	cmpb   $0x0,0x2c(%esi)
54f3bb:	74 29                	je     0x54f3e6
54f3bd:	80 7e 2b 00          	cmpb   $0x0,0x2b(%esi)
54f3c1:	75 14                	jne    0x54f3d7
54f3c3:	8b 46 04             	mov    0x4(%esi),%eax
54f3c6:	6a 09                	push   $0x9
54f3c8:	6a 01                	push   $0x1
54f3ca:	6a 00                	push   $0x0
54f3cc:	8b 08                	mov    (%eax),%ecx
54f3ce:	50                   	push   %eax
54f3cf:	8b 41 38             	mov    0x38(%ecx),%eax
54f3d2:	ff d0                	call   *%eax
54f3d4:	83 c4 10             	add    $0x10,%esp
54f3d7:	c6 46 2c 00          	movb   $0x0,0x2c(%esi)
54f3db:	c7 46 68 00 00 00 00 	movl   $0x0,0x68(%esi)
54f3e2:	c6 46 2f 00          	movb   $0x0,0x2f(%esi)
54f3e6:	0f b7 46 28          	movzwl 0x28(%esi),%eax
54f3ea:	66 85 c0             	test   %ax,%ax
54f3ed:	78 24                	js     0x54f413
54f3ef:	80 7e 2b 00          	cmpb   $0x0,0x2b(%esi)
54f3f3:	75 17                	jne    0x54f40c
54f3f5:	8b 4e 04             	mov    0x4(%esi),%ecx
54f3f8:	6a 05                	push   $0x5
54f3fa:	98                   	cwtl
54f3fb:	83 c0 03             	add    $0x3,%eax
54f3fe:	8b 11                	mov    (%ecx),%edx
54f400:	6a 01                	push   $0x1
54f402:	50                   	push   %eax
54f403:	51                   	push   %ecx
54f404:	8b 42 38             	mov    0x38(%edx),%eax
54f407:	ff d0                	call   *%eax
54f409:	83 c4 10             	add    $0x10,%esp
54f40c:	83 c8 ff             	or     $0xffffffff,%eax
54f40f:	66 89 46 28          	mov    %ax,0x28(%esi)
54f413:	5e                   	pop    %esi
54f414:	5d                   	pop    %ebp
54f415:	c3                   	ret
54f416:	cc                   	int3
54f417:	cc                   	int3
54f418:	cc                   	int3
54f419:	cc                   	int3
54f41a:	cc                   	int3
54f41b:	cc                   	int3
54f41c:	cc                   	int3
54f41d:	cc                   	int3
54f41e:	cc                   	int3
54f41f:	cc                   	int3
54f420:	55                   	push   %ebp
54f421:	8b ec                	mov    %esp,%ebp
54f423:	83 ec 18             	sub    $0x18,%esp
54f426:	8b 55 08             	mov    0x8(%ebp),%edx
54f429:	53                   	push   %ebx
54f42a:	33 db                	xor    %ebx,%ebx
54f42c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
54f42f:	8b 42 44             	mov    0x44(%edx),%eax
54f432:	89 45 f8             	mov    %eax,-0x8(%ebp)
54f435:	85 c0                	test   %eax,%eax
54f437:	0f 84 41 01 00 00    	je     0x54f57e
54f43d:	66 39 5a 28          	cmp    %bx,0x28(%edx)
54f441:	75 09                	jne    0x54f44c
54f443:	38 5a 32             	cmp    %bl,0x32(%edx)
54f446:	0f 84 32 01 00 00    	je     0x54f57e
54f44c:	8b 4a 64             	mov    0x64(%edx),%ecx
54f44f:	56                   	push   %esi
54f450:	57                   	push   %edi
54f451:	83 c1 21             	add    $0x21,%ecx
54f454:	8d 78 21             	lea    0x21(%eax),%edi
54f457:	c1 e9 0c             	shr    $0xc,%ecx
54f45a:	c1 ef 0c             	shr    $0xc,%edi
54f45d:	89 4d f4             	mov    %ecx,-0xc(%ebp)
54f460:	3b f9                	cmp    %ecx,%edi
54f462:	0f 82 08 01 00 00    	jb     0x54f570
54f468:	39 7a 18             	cmp    %edi,0x18(%edx)
54f46b:	7e 11                	jle    0x54f47e
54f46d:	8b 42 20             	mov    0x20(%edx),%eax
54f470:	8b 0c b8             	mov    (%eax,%edi,4),%ecx
54f473:	89 4d ec             	mov    %ecx,-0x14(%ebp)
54f476:	85 c9                	test   %ecx,%ecx
54f478:	74 04                	je     0x54f47e
54f47a:	33 d2                	xor    %edx,%edx
54f47c:	eb 1b                	jmp    0x54f499
54f47e:	8d 45 ec             	lea    -0x14(%ebp),%eax
54f481:	50                   	push   %eax
54f482:	57                   	push   %edi
54f483:	52                   	push   %edx
54f484:	e8 a7 f4 00 00       	call   0x55e930
54f489:	8b d0                	mov    %eax,%edx
54f48b:	83 c4 0c             	add    $0xc,%esp
54f48e:	85 d2                	test   %edx,%edx
54f490:	0f 85 d1 00 00 00    	jne    0x54f567
54f496:	8b 4d ec             	mov    -0x14(%ebp),%ecx
54f499:	8d b1 00 40 00 00    	lea    0x4000(%ecx),%esi
54f49f:	89 75 e8             	mov    %esi,-0x18(%ebp)
54f4a2:	85 ff                	test   %edi,%edi
54f4a4:	75 0b                	jne    0x54f4b1
54f4a6:	81 c1 88 00 00 00    	add    $0x88,%ecx
54f4ac:	89 7d f0             	mov    %edi,-0x10(%ebp)
54f4af:	eb 0b                	jmp    0x54f4bc
54f4b1:	8b c7                	mov    %edi,%eax
54f4b3:	c1 e0 0c             	shl    $0xc,%eax
54f4b6:	83 e8 22             	sub    $0x22,%eax
54f4b9:	89 45 f0             	mov    %eax,-0x10(%ebp)
54f4bc:	83 e9 04             	sub    $0x4,%ecx
54f4bf:	89 4d ec             	mov    %ecx,-0x14(%ebp)
54f4c2:	85 d2                	test   %edx,%edx
54f4c4:	0f 85 9d 00 00 00    	jne    0x54f567
54f4ca:	69 45 0c 7f 01 00 00 	imul   $0x17f,0xc(%ebp),%eax
54f4d1:	ba 00 20 00 00       	mov    $0x2000,%edx
54f4d6:	25 ff 1f 00 00       	and    $0x1fff,%eax
54f4db:	66 83 3c 46 00       	cmpw   $0x0,(%esi,%eax,2)
54f4e0:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
54f4e3:	74 4a                	je     0x54f52f
54f4e5:	0f b7 19             	movzwl (%ecx),%ebx
54f4e8:	8b 75 f0             	mov    -0x10(%ebp),%esi
54f4eb:	03 f3                	add    %ebx,%esi
54f4ed:	3b 75 f8             	cmp    -0x8(%ebp),%esi
54f4f0:	77 1c                	ja     0x54f50e
54f4f2:	8b 4d 08             	mov    0x8(%ebp),%ecx
54f4f5:	3b 71 64             	cmp    0x64(%ecx),%esi
54f4f8:	72 14                	jb     0x54f50e
54f4fa:	8b 4d ec             	mov    -0x14(%ebp),%ecx
54f4fd:	8b 0c 99             	mov    (%ecx,%ebx,4),%ecx
54f500:	8b 5d fc             	mov    -0x4(%ebp),%ebx
54f503:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
54f506:	0f 44 de             	cmove  %esi,%ebx
54f509:	89 5d fc             	mov    %ebx,-0x4(%ebp)
54f50c:	eb 03                	jmp    0x54f511
54f50e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
54f511:	8b ca                	mov    %edx,%ecx
54f513:	4a                   	dec    %edx
54f514:	85 c9                	test   %ecx,%ecx
54f516:	74 25                	je     0x54f53d
54f518:	8b 4d e8             	mov    -0x18(%ebp),%ecx
54f51b:	40                   	inc    %eax
54f51c:	25 ff 1f 00 00       	and    $0x1fff,%eax
54f521:	66 83 3c 41 00       	cmpw   $0x0,(%ecx,%eax,2)
54f526:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
54f529:	75 ba                	jne    0x54f4e5
54f52b:	85 db                	test   %ebx,%ebx
54f52d:	75 41                	jne    0x54f570
54f52f:	4f                   	dec    %edi
54f530:	3b 7d f4             	cmp    -0xc(%ebp),%edi
54f533:	7c 3b                	jl     0x54f570
54f535:	8b 55 08             	mov    0x8(%ebp),%edx
54f538:	e9 2b ff ff ff       	jmp    0x54f468
54f53d:	68 fc c4 6b 00       	push   $0x6bc4fc
54f542:	68 b8 f2 00 00       	push   $0xf2b8
54f547:	68 94 c4 6b 00       	push   $0x6bc494
54f54c:	68 78 c4 6b 00       	push   $0x6bc478
54f551:	6a 0b                	push   $0xb
54f553:	e8 88 0a f9 ff       	call   0x4dffe0
54f558:	83 c4 14             	add    $0x14,%esp
54f55b:	b8 0b 00 00 00       	mov    $0xb,%eax
54f560:	5f                   	pop    %edi
54f561:	5e                   	pop    %esi
54f562:	5b                   	pop    %ebx
54f563:	8b e5                	mov    %ebp,%esp
54f565:	5d                   	pop    %ebp
54f566:	c3                   	ret
54f567:	5f                   	pop    %edi
54f568:	5e                   	pop    %esi
54f569:	8b c2                	mov    %edx,%eax
54f56b:	5b                   	pop    %ebx
54f56c:	8b e5                	mov    %ebp,%esp
54f56e:	5d                   	pop    %ebp
54f56f:	c3                   	ret
54f570:	8b 45 10             	mov    0x10(%ebp),%eax
54f573:	5f                   	pop    %edi
54f574:	5e                   	pop    %esi
54f575:	89 18                	mov    %ebx,(%eax)
54f577:	33 c0                	xor    %eax,%eax
54f579:	5b                   	pop    %ebx
54f57a:	8b e5                	mov    %ebp,%esp
54f57c:	5d                   	pop    %ebp
54f57d:	c3                   	ret
54f57e:	8b 45 10             	mov    0x10(%ebp),%eax
54f581:	89 18                	mov    %ebx,(%eax)
54f583:	33 c0                	xor    %eax,%eax
54f585:	5b                   	pop    %ebx
54f586:	8b e5                	mov    %ebp,%esp
54f588:	5d                   	pop    %ebp
54f589:	c3                   	ret
54f58a:	cc                   	int3