5402cf:	83 c7 08             	add    $0x8,%edi
5402d2:	03 cf                	add    %edi,%ecx
5402d4:	83 c0 07             	add    $0x7,%eax
5402d7:	33 ed                	xor    %ebp,%ebp
5402d9:	33 ff                	xor    %edi,%edi
5402db:	83 f8 07             	cmp    $0x7,%eax
5402de:	77 4c                	ja     0x54032c
5402e0:	ff 24 85 04 06 54 00 	jmp    *0x540604(,%eax,4)
5402e7:	0f b6 69 ff          	movzbl -0x1(%ecx),%ebp
5402eb:	49                   	dec    %ecx
5402ec:	c1 e5 18             	shl    $0x18,%ebp
5402ef:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
5402f3:	49                   	dec    %ecx
5402f4:	c1 e0 10             	shl    $0x10,%eax
5402f7:	0b e8                	or     %eax,%ebp
5402f9:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
5402fd:	49                   	dec    %ecx
5402fe:	c1 e0 08             	shl    $0x8,%eax
540301:	0b e8                	or     %eax,%ebp
540303:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
540307:	49                   	dec    %ecx
540308:	0b e8                	or     %eax,%ebp
54030a:	0f b6 79 ff          	movzbl -0x1(%ecx),%edi
54030e:	49                   	dec    %ecx
54030f:	c1 e7 18             	shl    $0x18,%edi
540312:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
540316:	49                   	dec    %ecx
540317:	c1 e0 10             	shl    $0x10,%eax
54031a:	0b f8                	or     %eax,%edi
54031c:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
540320:	49                   	dec    %ecx
540321:	c1 e0 08             	shl    $0x8,%eax
540324:	0b f8                	or     %eax,%edi
540326:	0f b6 41 ff          	movzbl -0x1(%ecx),%eax
54032a:	0b f8                	or     %eax,%edi
54032c:	6a 01                	push   $0x1
54032e:	ff 74 24 3c          	push   0x3c(%esp)
540332:	33 fa                	xor    %edx,%edi
540334:	8d 44 24 28          	lea    0x28(%esp),%eax
540338:	33 7c 24 1c          	xor    0x1c(%esp),%edi
54033c:	33 eb                	xor    %ebx,%ebp
54033e:	33 6c 24 20          	xor    0x20(%esp),%ebp
540342:	50                   	push   %eax
540343:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
540347:	89 6c 24 30          	mov    %ebp,0x30(%esp)
54034b:	e8 30 4d ed ff       	call   0x415080
540350:	8b 54 24 2c          	mov    0x2c(%esp),%edx
540354:	83 c4 0c             	add    $0xc,%esp
540357:	33 54 24 44          	xor    0x44(%esp),%edx
54035b:	8b 5c 24 24          	mov    0x24(%esp),%ebx
54035f:	8b c2                	mov    %edx,%eax
540361:	33 5c 24 10          	xor    0x10(%esp),%ebx
540365:	c1 e8 08             	shr    $0x8,%eax
540368:	88 16                	mov    %dl,(%esi)
54036a:	88 46 01             	mov    %al,0x1(%esi)
54036d:	8b c2                	mov    %edx,%eax
54036f:	c1 e8 10             	shr    $0x10,%eax
540372:	88 46 02             	mov    %al,0x2(%esi)
540375:	8b c2                	mov    %edx,%eax
540377:	c1 e8 18             	shr    $0x18,%eax
54037a:	88 46 03             	mov    %al,0x3(%esi)
54037d:	8b c3                	mov    %ebx,%eax
54037f:	c1 e8 08             	shr    $0x8,%eax
540382:	88 46 05             	mov    %al,0x5(%esi)
540385:	8b c3                	mov    %ebx,%eax
540387:	c1 e8 10             	shr    $0x10,%eax
54038a:	88 46 06             	mov    %al,0x6(%esi)
54038d:	8b c3                	mov    %ebx,%eax
54038f:	c1 e8 18             	shr    $0x18,%eax
540392:	88 5e 04             	mov    %bl,0x4(%esi)
540395:	88 46 07             	mov    %al,0x7(%esi)
540398:	e9 fc 01 00 00       	jmp    0x540599
54039d:	0f b6 6e 04          	movzbl 0x4(%esi),%ebp
5403a1:	8b 7c 24 34          	mov    0x34(%esp),%edi
5403a5:	0b e8                	or     %eax,%ebp
5403a7:	0f b6 46 06          	movzbl 0x6(%esi),%eax
5403ab:	83 c7 f8             	add    $0xfffffff8,%edi
5403ae:	8b 74 24 30          	mov    0x30(%esp),%esi
5403b2:	0b c8                	or     %eax,%ecx
5403b4:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
5403b8:	c1 e1 10             	shl    $0x10,%ecx
5403bb:	0b e9                	or     %ecx,%ebp
5403bd:	89 6c 24 48          	mov    %ebp,0x48(%esp)
5403c1:	85 ff                	test   %edi,%edi
5403c3:	0f 8e f1 00 00 00    	jle    0x5404ba
5403c9:	8d 47 ff             	lea    -0x1(%edi),%eax
5403cc:	89 74 24 34          	mov    %esi,0x34(%esp)
5403d0:	c1 e8 03             	shr    $0x3,%eax
5403d3:	40                   	inc    %eax
5403d4:	89 44 24 48          	mov    %eax,0x48(%esp)
5403d8:	f7 d8                	neg    %eax
5403da:	8d 3c c7             	lea    (%edi,%eax,8),%edi
5403dd:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
5403e1:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
5403e5:	0f b6 3b             	movzbl (%ebx),%edi
5403e8:	c1 e0 08             	shl    $0x8,%eax
5403eb:	0b f8                	or     %eax,%edi
5403ed:	0f b6 73 04          	movzbl 0x4(%ebx),%esi
5403f1:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
5403f5:	c1 e0 10             	shl    $0x10,%eax
5403f8:	0b f8                	or     %eax,%edi
5403fa:	0f b6 43 03          	movzbl 0x3(%ebx),%eax
5403fe:	c1 e0 18             	shl    $0x18,%eax
540401:	0b f8                	or     %eax,%edi
540403:	8b c7                	mov    %edi,%eax
540405:	33 44 24 44          	xor    0x44(%esp),%eax
540409:	89 44 24 20          	mov    %eax,0x20(%esp)
54040d:	0f b6 43 05          	movzbl 0x5(%ebx),%eax
540411:	c1 e0 08             	shl    $0x8,%eax
540414:	0b f0                	or     %eax,%esi
540416:	0f b6 43 06          	movzbl 0x6(%ebx),%eax
54041a:	c1 e0 10             	shl    $0x10,%eax
54041d:	0b f0                	or     %eax,%esi
54041f:	0f b6 43 07          	movzbl 0x7(%ebx),%eax
540423:	c1 e0 18             	shl    $0x18,%eax
540426:	83 c3 08             	add    $0x8,%ebx
540429:	0b f0                	or     %eax,%esi
54042b:	8b c6                	mov    %esi,%eax
54042d:	33 44 24 10          	xor    0x10(%esp),%eax
540431:	6a 00                	push   $0x0
540433:	ff 74 24 3c          	push   0x3c(%esp)
540437:	89 44 24 2c          	mov    %eax,0x2c(%esp)
54043b:	8d 44 24 28          	lea    0x28(%esp),%eax
54043f:	50                   	push   %eax
540440:	e8 3b 4c ed ff       	call   0x415080
540445:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
540449:	83 c4 0c             	add    $0xc,%esp
54044c:	33 4c 24 40          	xor    0x40(%esp),%ecx
540450:	33 4c 24 14          	xor    0x14(%esp),%ecx
540454:	8b 54 24 24          	mov    0x24(%esp),%edx
540458:	8b c1                	mov    %ecx,%eax
54045a:	33 d5                	xor    %ebp,%edx
54045c:	c1 e8 08             	shr    $0x8,%eax
54045f:	8b 6c 24 34          	mov    0x34(%esp),%ebp
540463:	33 54 24 18          	xor    0x18(%esp),%edx
540467:	88 4d 00             	mov    %cl,0x0(%ebp)
54046a:	88 45 01             	mov    %al,0x1(%ebp)
54046d:	8b c1                	mov    %ecx,%eax
54046f:	c1 e8 10             	shr    $0x10,%eax
540472:	88 45 02             	mov    %al,0x2(%ebp)
540475:	8b c2                	mov    %edx,%eax
540477:	c1 e8 08             	shr    $0x8,%eax
54047a:	88 45 05             	mov    %al,0x5(%ebp)
54047d:	8b c2                	mov    %edx,%eax
54047f:	88 55 04             	mov    %dl,0x4(%ebp)
540482:	c1 ea 18             	shr    $0x18,%edx
540485:	c1 e9 18             	shr    $0x18,%ecx
540488:	c1 e8 10             	shr    $0x10,%eax
54048b:	88 55 07             	mov    %dl,0x7(%ebp)
54048e:	8b d7                	mov    %edi,%edx
540490:	88 4d 03             	mov    %cl,0x3(%ebp)
540493:	88 45 06             	mov    %al,0x6(%ebp)
540496:	83 c5 08             	add    $0x8,%ebp
540499:	83 6c 24 48 01       	subl   $0x1,0x48(%esp)
54049e:	89 6c 24 34          	mov    %ebp,0x34(%esp)
5404a2:	8b ee                	mov    %esi,%ebp
5404a4:	89 54 24 40          	mov    %edx,0x40(%esp)
5404a8:	0f 85 33 ff ff ff    	jne    0x5403e1
5404ae:	8b 74 24 34          	mov    0x34(%esp),%esi
5404b2:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
5404b6:	89 6c 24 48          	mov    %ebp,0x48(%esp)
5404ba:	83 ff f8             	cmp    $0xfffffff8,%edi
5404bd:	0f 84 d2 00 00 00    	je     0x540595
5404c3:	0f b6 43 01          	movzbl 0x1(%ebx),%eax
5404c7:	0f b6 0b             	movzbl (%ebx),%ecx
5404ca:	0f b6 53 04          	movzbl 0x4(%ebx),%edx
5404ce:	c1 e0 08             	shl    $0x8,%eax
5404d1:	0b c8                	or     %eax,%ecx
5404d3:	0f b6 43 02          	movzbl 0x2(%ebx),%eax
5404d7:	c1 e0 10             	shl    $0x10,%eax
5404da:	0b c8                	or     %eax,%ecx
5404dc:	0f b6 43 03          	movzbl 0x3(%ebx),%eax
5404e0:	c1 e0 18             	shl    $0x18,%eax
5404e3:	0b c8                	or     %eax,%ecx
5404e5:	0f b6 43 05          	movzbl 0x5(%ebx),%eax
5404e9:	89 4c 24 34          	mov    %ecx,0x34(%esp)
5404ed:	33 4c 24 44          	xor    0x44(%esp),%ecx
5404f1:	89 4c 24 20          	mov    %ecx,0x20(%esp)
5404f5:	0f b6 4b 07          	movzbl 0x7(%ebx),%ecx
5404f9:	c1 e0 08             	shl    $0x8,%eax
5404fc:	0b d0                	or     %eax,%edx
5404fe:	c1 e1 08             	shl    $0x8,%ecx
540501:	0f b6 43 06          	movzbl 0x6(%ebx),%eax
540505:	0b c8                	or     %eax,%ecx
540507:	8d 44 24 20          	lea    0x20(%esp),%eax
54050b:	c1 e1 10             	shl    $0x10,%ecx
54050e:	0b d1                	or     %ecx,%edx
540510:	6a 00                	push   $0x0
540512:	ff 74 24 3c          	push   0x3c(%esp)
540516:	89 54 24 4c          	mov    %edx,0x4c(%esp)
54051a:	33 54 24 18          	xor    0x18(%esp),%edx
54051e:	50                   	push   %eax
54051f:	89 54 24 30          	mov    %edx,0x30(%esp)
540523:	e8 58 4b ed ff       	call   0x415080
540528:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
54052c:	8d 4f 08             	lea    0x8(%edi),%ecx
54052f:	8b 54 24 30          	mov    0x30(%esp),%edx
540533:	83 c7 07             	add    $0x7,%edi
540536:	33 5c 24 4c          	xor    0x4c(%esp),%ebx
54053a:	33 d5                	xor    %ebp,%edx
54053c:	33 5c 24 20          	xor    0x20(%esp),%ebx
540540:	83 c4 0c             	add    $0xc,%esp
540543:	33 54 24 18          	xor    0x18(%esp),%edx
540547:	03 ce                	add    %esi,%ecx
540549:	83 ff 07             	cmp    $0x7,%edi
54054c:	77 3d                	ja     0x54058b
54054e:	ff 24 bd 24 06 54 00 	jmp    *0x540624(,%edi,4)
540555:	49                   	dec    %ecx
540556:	8b c2                	mov    %edx,%eax
540558:	c1 e8 18             	shr    $0x18,%eax
54055b:	88 01                	mov    %al,(%ecx)
54055d:	49                   	dec    %ecx
54055e:	8b c2                	mov    %edx,%eax
540560:	c1 e8 10             	shr    $0x10,%eax
540563:	88 01                	mov    %al,(%ecx)
540565:	49                   	dec    %ecx
540566:	8b c2                	mov    %edx,%eax
540568:	c1 e8 08             	shr    $0x8,%eax
54056b:	88 01                	mov    %al,(%ecx)
54056d:	49                   	dec    %ecx
54056e:	88 11                	mov    %dl,(%ecx)
540570:	49                   	dec    %ecx
540571:	8b c3                	mov    %ebx,%eax
540573:	c1 e8 18             	shr    $0x18,%eax
540576:	88 01                	mov    %al,(%ecx)
540578:	49                   	dec    %ecx
540579:	8b c3                	mov    %ebx,%eax
54057b:	c1 e8 10             	shr    $0x10,%eax
54057e:	88 01                	mov    %al,(%ecx)
540580:	49                   	dec    %ecx
540581:	8b c3                	mov    %ebx,%eax
540583:	c1 e8 08             	shr    $0x8,%eax
540586:	88 01                	mov    %al,(%ecx)
540588:	88 59 ff             	mov    %bl,-0x1(%ecx)
54058b:	8b 54 24 34          	mov    0x34(%esp),%edx
54058f:	8b 5c 24 44          	mov    0x44(%esp),%ebx
540593:	eb 04                	jmp    0x540599
540595:	8b 5c 24 48          	mov    0x48(%esp),%ebx
540599:	8b c3                	mov    %ebx,%eax
54059b:	8b cb                	mov    %ebx,%ecx
54059d:	c1 e8 10             	shr    $0x10,%eax
5405a0:	89 44 24 18          	mov    %eax,0x18(%esp)
5405a4:	8b c3                	mov    %ebx,%eax
5405a6:	c1 e8 08             	shr    $0x8,%eax
5405a9:	89 44 24 48          	mov    %eax,0x48(%esp)
5405ad:	8b c2                	mov    %edx,%eax
5405af:	c1 e8 18             	shr    $0x18,%eax
5405b2:	89 44 24 44          	mov    %eax,0x44(%esp)
5405b6:	8b c2                	mov    %edx,%eax
5405b8:	c1 e8 10             	shr    $0x10,%eax
5405bb:	89 44 24 40          	mov    %eax,0x40(%esp)
5405bf:	8b c2                	mov    %edx,%eax
5405c1:	c1 e9 18             	shr    $0x18,%ecx
5405c4:	c1 e8 08             	shr    $0x8,%eax
5405c7:	89 44 24 34          	mov    %eax,0x34(%esp)
5405cb:	8b 44 24 3c          	mov    0x3c(%esp),%eax
5405cf:	5f                   	pop    %edi
5405d0:	5e                   	pop    %esi
5405d1:	5d                   	pop    %ebp
5405d2:	88 10                	mov    %dl,(%eax)
5405d4:	8b 54 24 28          	mov    0x28(%esp),%edx
5405d8:	88 50 01             	mov    %dl,0x1(%eax)
5405db:	8b 54 24 34          	mov    0x34(%esp),%edx
5405df:	88 50 02             	mov    %dl,0x2(%eax)
5405e2:	8b 54 24 38          	mov    0x38(%esp),%edx
5405e6:	88 50 03             	mov    %dl,0x3(%eax)
5405e9:	8b 54 24 3c          	mov    0x3c(%esp),%edx
5405ed:	88 58 04             	mov    %bl,0x4(%eax)
5405f0:	88 50 05             	mov    %dl,0x5(%eax)
5405f3:	8b 54 24 0c          	mov    0xc(%esp),%edx
5405f7:	88 50 06             	mov    %dl,0x6(%eax)
5405fa:	88 48 07             	mov    %cl,0x7(%eax)
5405fd:	5b                   	pop    %ebx
5405fe:	83 c4 18             	add    $0x18,%esp
540601:	c3                   	ret
540602:	66 90                	xchg   %ax,%ax
540604:	26 03 54 00 1c       	add    %es:0x1c(%eax,%eax,1),%edx
540609:	03 54 00 12          	add    0x12(%eax,%eax,1),%edx
54060d:	03 54 00 0a          	add    0xa(%eax,%eax,1),%edx
540611:	03 54 00 03          	add    0x3(%eax,%eax,1),%edx
540615:	03 54 00 f9          	add    -0x7(%eax,%eax,1),%edx
540619:	02 54 00 ef          	add    -0x11(%eax,%eax,1),%dl
54061d:	02 54 00 e7          	add    -0x19(%eax,%eax,1),%dl
540621:	02 54 00 88          	add    -0x78(%eax,%eax,1),%dl
540625:	05 54 00 80 05       	add    $0x5800054,%eax
54062a:	54                   	push   %esp
54062b:	00 78 05             	add    %bh,0x5(%eax)
54062e:	54                   	push   %esp
54062f:	00 70 05             	add    %dh,0x5(%eax)
540632:	54                   	push   %esp
540633:	00 6d 05             	add    %ch,0x5(%ebp)
540636:	54                   	push   %esp
540637:	00 65 05             	add    %ah,0x5(%ebp)
54063a:	54                   	push   %esp
54063b:	00 5d 05             	add    %bl,0x5(%ebp)
54063e:	54                   	push   %esp
54063f:	00 55 05             	add    %dl,0x5(%ebp)
540642:	54                   	push   %esp
540643:	00 cc                	add    %cl,%ah
540645:	cc                   	int3
540646:	cc                   	int3
540647:	cc                   	int3
540648:	cc                   	int3
540649:	cc                   	int3
54064a:	cc                   	int3
54064b:	cc                   	int3
54064c:	cc                   	int3
54064d:	cc                   	int3
54064e:	cc                   	int3
54064f:	cc                   	int3
540650:	b8 08 00 00 00       	mov    $0x8,%eax
540655:	e8 56 11 09 00       	call   0x5d17b0
54065a:	53                   	push   %ebx
54065b:	55                   	push   %ebp
54065c:	56                   	push   %esi
54065d:	8b 74 24 18          	mov    0x18(%esp),%esi
540661:	57                   	push   %edi
540662:	68 48 10 00 00       	push   $0x1048
540667:	68 c0 ac 64 00       	push   $0x64acc0
54066c:	56                   	push   %esi
54066d:	e8 5e 27 09 00       	call   0x5d2dd0
540672:	8b 5c 24 30          	mov    0x30(%esp),%ebx
540676:	bf 48 00 00 00       	mov    $0x48,%edi
54067b:	83 c4 0c             	add    $0xc,%esp
54067e:	8b c3                	mov    %ebx,%eax
540680:	39 7c 24 20          	cmp    %edi,0x20(%esp)
540684:	0f 4e 7c 24 20       	cmovle 0x20(%esp),%edi
540689:	03 fb                	add    %ebx,%edi
54068b:	33 ed                	xor    %ebp,%ebp
54068d:	0f 1f 00             	nopl   (%eax)
540690:	0f b6 10             	movzbl (%eax),%edx
540693:	40                   	inc    %eax
540694:	3b c7                	cmp    %edi,%eax
540696:	0f 43 c3             	cmovae %ebx,%eax
540699:	c1 e2 08             	shl    $0x8,%edx
54069c:	0f b6 08             	movzbl (%eax),%ecx
54069f:	40                   	inc    %eax
5406a0:	0b d1                	or     %ecx,%edx
5406a2:	3b c7                	cmp    %edi,%eax
5406a4:	0f 43 c3             	cmovae %ebx,%eax
5406a7:	c1 e2 08             	shl    $0x8,%edx
5406aa:	0f b6 08             	movzbl (%eax),%ecx
5406ad:	40                   	inc    %eax
5406ae:	0b d1                	or     %ecx,%edx
5406b0:	3b c7                	cmp    %edi,%eax
5406b2:	0f 43 c3             	cmovae %ebx,%eax
5406b5:	c1 e2 08             	shl    $0x8,%edx
5406b8:	0f b6 08             	movzbl (%eax),%ecx
5406bb:	40                   	inc    %eax
5406bc:	0b d1                	or     %ecx,%edx