54153c:	c1 ef 08             	shr    $0x8,%edi
54153f:	81 e1 00 ff 00 00    	and    $0xff00,%ecx
541545:	c1 e6 10             	shl    $0x10,%esi
541548:	33 ce                	xor    %esi,%ecx
54154a:	8b f5                	mov    %ebp,%esi
54154c:	c1 e1 08             	shl    $0x8,%ecx
54154f:	33 f9                	xor    %ecx,%edi
541551:	c1 ee 08             	shr    $0x8,%esi
541554:	8b cd                	mov    %ebp,%ecx
541556:	8b d7                	mov    %edi,%edx
541558:	c1 e1 08             	shl    $0x8,%ecx
54155b:	33 d3                	xor    %ebx,%edx
54155d:	33 f1                	xor    %ecx,%esi
54155f:	c1 e5 08             	shl    $0x8,%ebp
541562:	8b 4c 24 24          	mov    0x24(%esp),%ecx
541566:	81 e6 ff 00 ff 00    	and    $0xff00ff,%esi
54156c:	33 f5                	xor    %ebp,%esi
54156e:	33 f3                	xor    %ebx,%esi
541570:	33 ce                	xor    %esi,%ecx
541572:	33 fe                	xor    %esi,%edi
541574:	33 d1                	xor    %ecx,%edx
541576:	89 08                	mov    %ecx,(%eax)
541578:	89 78 0c             	mov    %edi,0xc(%eax)
54157b:	8b ca                	mov    %edx,%ecx
54157d:	33 ce                	xor    %esi,%ecx
54157f:	89 50 08             	mov    %edx,0x8(%eax)
541582:	5f                   	pop    %edi
541583:	5e                   	pop    %esi
541584:	89 48 04             	mov    %ecx,0x4(%eax)
541587:	33 c0                	xor    %eax,%eax
541589:	5d                   	pop    %ebp
54158a:	5b                   	pop    %ebx
54158b:	83 c4 18             	add    $0x18,%esp
54158e:	c3                   	ret
54158f:	cc                   	int3
541590:	b8 48 00 00 00       	mov    $0x48,%eax
541595:	e8 16 02 09 00       	call   0x5d17b0
54159a:	8b 4c 24 50          	mov    0x50(%esp),%ecx
54159e:	55                   	push   %ebp
54159f:	8b 6c 24 50          	mov    0x50(%esp),%ebp
5415a3:	8d 81 00 01 00 00    	lea    0x100(%ecx),%eax
5415a9:	99                   	cltd
5415aa:	83 e2 1f             	and    $0x1f,%edx
5415ad:	03 c2                	add    %edx,%eax
5415af:	c1 f8 05             	sar    $0x5,%eax
5415b2:	85 ed                	test   %ebp,%ebp
5415b4:	0f 84 f1 0b 00 00    	je     0x5421ab
5415ba:	8b 54 24 58          	mov    0x58(%esp),%edx
5415be:	85 d2                	test   %edx,%edx
5415c0:	0f 84 e5 0b 00 00    	je     0x5421ab
5415c6:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
5415cc:	74 1a                	je     0x5415e8
5415ce:	81 f9 c0 00 00 00    	cmp    $0xc0,%ecx
5415d4:	74 12                	je     0x5415e8
5415d6:	81 f9 00 01 00 00    	cmp    $0x100,%ecx
5415dc:	74 0a                	je     0x5415e8
5415de:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
5415e3:	5d                   	pop    %ebp
5415e4:	83 c4 48             	add    $0x48,%esp
5415e7:	c3                   	ret
5415e8:	89 82 10 01 00 00    	mov    %eax,0x110(%edx)
5415ee:	8d 41 80             	lea    -0x80(%ecx),%eax
5415f1:	99                   	cltd
5415f2:	0f b6 4d 01          	movzbl 0x1(%ebp),%ecx
5415f6:	83 e2 3f             	and    $0x3f,%edx
5415f9:	53                   	push   %ebx
5415fa:	56                   	push   %esi
5415fb:	0f b6 5d 08          	movzbl 0x8(%ebp),%ebx
5415ff:	57                   	push   %edi
541600:	8d 3c 02             	lea    (%edx,%eax,1),%edi
541603:	0f b6 75 0c          	movzbl 0xc(%ebp),%esi
541607:	0f b6 55 00          	movzbl 0x0(%ebp),%edx
54160b:	0f b6 45 02          	movzbl 0x2(%ebp),%eax
54160f:	c1 e2 08             	shl    $0x8,%edx
541612:	33 d1                	xor    %ecx,%edx
541614:	c1 e3 08             	shl    $0x8,%ebx
541617:	0f b6 4d 04          	movzbl 0x4(%ebp),%ecx
54161b:	c1 e2 08             	shl    $0x8,%edx
54161e:	33 d0                	xor    %eax,%edx
541620:	c1 e1 08             	shl    $0x8,%ecx
541623:	0f b6 45 03          	movzbl 0x3(%ebp),%eax
541627:	c1 e2 08             	shl    $0x8,%edx
54162a:	33 d0                	xor    %eax,%edx
54162c:	c1 e6 08             	shl    $0x8,%esi
54162f:	0f b6 45 05          	movzbl 0x5(%ebp),%eax
541633:	33 c8                	xor    %eax,%ecx
541635:	c1 ff 06             	sar    $0x6,%edi
541638:	0f b6 45 06          	movzbl 0x6(%ebp),%eax
54163c:	c1 e1 08             	shl    $0x8,%ecx
54163f:	33 c8                	xor    %eax,%ecx
541641:	c1 e7 04             	shl    $0x4,%edi
541644:	0f b6 45 07          	movzbl 0x7(%ebp),%eax
541648:	81 c7 08 bd 64 00    	add    $0x64bd08,%edi
54164e:	c1 e1 08             	shl    $0x8,%ecx
541651:	33 c8                	xor    %eax,%ecx
541653:	89 54 24 5c          	mov    %edx,0x5c(%esp)
541657:	0f b6 45 09          	movzbl 0x9(%ebp),%eax
54165b:	33 d8                	xor    %eax,%ebx
54165d:	89 4c 24 10          	mov    %ecx,0x10(%esp)
541661:	0f b6 45 0a          	movzbl 0xa(%ebp),%eax
541665:	c1 e3 08             	shl    $0x8,%ebx
541668:	33 d8                	xor    %eax,%ebx
54166a:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
54166e:	0f b6 45 0b          	movzbl 0xb(%ebp),%eax
541672:	c1 e3 08             	shl    $0x8,%ebx
541675:	33 d8                	xor    %eax,%ebx
541677:	0f b6 45 0d          	movzbl 0xd(%ebp),%eax
54167b:	33 f0                	xor    %eax,%esi
54167d:	89 5c 24 14          	mov    %ebx,0x14(%esp)
541681:	0f b6 45 0e          	movzbl 0xe(%ebp),%eax
541685:	c1 e6 08             	shl    $0x8,%esi
541688:	33 f0                	xor    %eax,%esi
54168a:	0f b6 45 0f          	movzbl 0xf(%ebp),%eax
54168e:	c1 e6 08             	shl    $0x8,%esi
541691:	33 f0                	xor    %eax,%esi
541693:	8b 07                	mov    (%edi),%eax
541695:	33 c2                	xor    %edx,%eax
541697:	89 74 24 18          	mov    %esi,0x18(%esp)
54169b:	8b 57 08             	mov    0x8(%edi),%edx
54169e:	89 44 24 30          	mov    %eax,0x30(%esp)
5416a2:	33 d3                	xor    %ebx,%edx
5416a4:	8b 47 04             	mov    0x4(%edi),%eax
5416a7:	8b 5f 0c             	mov    0xc(%edi),%ebx
5416aa:	33 c1                	xor    %ecx,%eax
5416ac:	89 44 24 34          	mov    %eax,0x34(%esp)
5416b0:	33 de                	xor    %esi,%ebx
5416b2:	8b c2                	mov    %edx,%eax
5416b4:	c1 e8 10             	shr    $0x10,%eax
5416b7:	0f b6 c8             	movzbl %al,%ecx
5416ba:	8b c2                	mov    %edx,%eax
5416bc:	c1 e8 08             	shr    $0x8,%eax
5416bf:	0f b6 c0             	movzbl %al,%eax
5416c2:	8b 3c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%edi
5416c9:	33 3c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%edi
5416d0:	8b c2                	mov    %edx,%eax
5416d2:	c1 e8 18             	shr    $0x18,%eax
5416d5:	33 3c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%edi
5416dc:	0f b6 c2             	movzbl %dl,%eax
5416df:	33 3c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%edi
5416e6:	8b c3                	mov    %ebx,%eax
5416e8:	89 7c 24 38          	mov    %edi,0x38(%esp)
5416ec:	c1 e8 10             	shr    $0x10,%eax
5416ef:	0f b6 c8             	movzbl %al,%ecx
5416f2:	8b c3                	mov    %ebx,%eax
5416f4:	c1 e8 08             	shr    $0x8,%eax
5416f7:	0f b6 c0             	movzbl %al,%eax
5416fa:	8b 54 24 34          	mov    0x34(%esp),%edx
5416fe:	8b 3c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%edi
541705:	33 3c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%edi
54170c:	8b c3                	mov    %ebx,%eax
54170e:	c1 e8 18             	shr    $0x18,%eax
541711:	33 3c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%edi
541718:	0f b6 c3             	movzbl %bl,%eax
54171b:	8b 5c 24 38          	mov    0x38(%esp),%ebx
54171f:	33 3c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%edi
541726:	8b c2                	mov    %edx,%eax
541728:	c1 e8 10             	shr    $0x10,%eax
54172b:	0f b6 c8             	movzbl %al,%ecx
54172e:	8b c2                	mov    %edx,%eax
541730:	c1 e8 08             	shr    $0x8,%eax
541733:	0f b6 c0             	movzbl %al,%eax
541736:	8b 34 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%esi
54173d:	33 34 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%esi
541744:	8b c2                	mov    %edx,%eax
541746:	c1 e8 18             	shr    $0x18,%eax
541749:	33 34 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%esi
541750:	0f b6 c2             	movzbl %dl,%eax
541753:	8b 54 24 30          	mov    0x30(%esp),%edx
541757:	33 34 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%esi
54175e:	8b c2                	mov    %edx,%eax
541760:	c1 e8 10             	shr    $0x10,%eax
541763:	33 f3                	xor    %ebx,%esi
541765:	0f b6 c8             	movzbl %al,%ecx
541768:	33 df                	xor    %edi,%ebx
54176a:	8b c2                	mov    %edx,%eax
54176c:	33 fe                	xor    %esi,%edi
54176e:	c1 e8 08             	shr    $0x8,%eax
541771:	0f b6 c0             	movzbl %al,%eax
541774:	8b 0c 8d 58 c1 64 00 	mov    0x64c158(,%ecx,4),%ecx
54177b:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
541782:	8b c2                	mov    %edx,%eax
541784:	c1 e8 18             	shr    $0x18,%eax
541787:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
54178e:	0f b6 c2             	movzbl %dl,%eax
541791:	8b d7                	mov    %edi,%edx
541793:	81 e2 00 00 ff 00    	and    $0xff0000,%edx
541799:	33 0c 85 58 c9 64 00 	xor    0x64c958(,%eax,4),%ecx
5417a0:	8b c7                	mov    %edi,%eax
5417a2:	c1 e8 10             	shr    $0x10,%eax
5417a5:	33 ce                	xor    %esi,%ecx
5417a7:	33 d0                	xor    %eax,%edx
5417a9:	33 d9                	xor    %ecx,%ebx
5417ab:	8b c7                	mov    %edi,%eax
5417ad:	c1 ea 08             	shr    $0x8,%edx
5417b0:	c1 e7 10             	shl    $0x10,%edi
5417b3:	25 00 ff 00 00       	and    $0xff00,%eax
5417b8:	33 c7                	xor    %edi,%eax
5417ba:	33 f3                	xor    %ebx,%esi
5417bc:	c1 e0 08             	shl    $0x8,%eax
5417bf:	8b fe                	mov    %esi,%edi
5417c1:	33 d0                	xor    %eax,%edx
5417c3:	c1 ef 08             	shr    $0x8,%edi
5417c6:	8b c6                	mov    %esi,%eax
5417c8:	c1 c3 10             	rol    $0x10,%ebx
5417cb:	c1 e0 08             	shl    $0x8,%eax
5417ce:	33 f8                	xor    %eax,%edi
5417d0:	c1 e6 08             	shl    $0x8,%esi
5417d3:	81 e7 ff 00 ff 00    	and    $0xff00ff,%edi
5417d9:	33 fe                	xor    %esi,%edi
5417db:	33 fb                	xor    %ebx,%edi
5417dd:	33 da                	xor    %edx,%ebx
5417df:	33 cf                	xor    %edi,%ecx
5417e1:	33 d7                	xor    %edi,%edx
5417e3:	33 d9                	xor    %ecx,%ebx
5417e5:	89 4c 24 34          	mov    %ecx,0x34(%esp)
5417e9:	33 fb                	xor    %ebx,%edi
5417eb:	89 5c 24 38          	mov    %ebx,0x38(%esp)
5417ef:	8b 5c 24 60          	mov    0x60(%esp),%ebx
5417f3:	89 54 24 30          	mov    %edx,0x30(%esp)
5417f7:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
5417fd:	0f 8e 8c 00 00 00    	jle    0x54188f
541803:	0f b6 4d 10          	movzbl 0x10(%ebp),%ecx
541807:	0f b6 45 11          	movzbl 0x11(%ebp),%eax
54180b:	0f b6 55 14          	movzbl 0x14(%ebp),%edx
54180f:	c1 e1 08             	shl    $0x8,%ecx
541812:	33 c8                	xor    %eax,%ecx
541814:	c1 e2 08             	shl    $0x8,%edx
541817:	0f b6 45 12          	movzbl 0x12(%ebp),%eax
54181b:	c1 e1 08             	shl    $0x8,%ecx
54181e:	33 c8                	xor    %eax,%ecx
541820:	0f b6 45 13          	movzbl 0x13(%ebp),%eax
541824:	c1 e1 08             	shl    $0x8,%ecx
541827:	33 c8                	xor    %eax,%ecx
541829:	0f b6 45 15          	movzbl 0x15(%ebp),%eax
54182d:	33 d0                	xor    %eax,%edx
54182f:	0f b6 45 16          	movzbl 0x16(%ebp),%eax
541833:	c1 e2 08             	shl    $0x8,%edx
541836:	33 d0                	xor    %eax,%edx
541838:	0f b6 45 17          	movzbl 0x17(%ebp),%eax
54183c:	c1 e2 08             	shl    $0x8,%edx
54183f:	33 d0                	xor    %eax,%edx
541841:	81 fb c0 00 00 00    	cmp    $0xc0,%ebx
541847:	7e 40                	jle    0x541889
541849:	0f b6 5d 18          	movzbl 0x18(%ebp),%ebx
54184d:	0f b6 45 19          	movzbl 0x19(%ebp),%eax
541851:	0f b6 75 1c          	movzbl 0x1c(%ebp),%esi
541855:	c1 e3 08             	shl    $0x8,%ebx
541858:	33 d8                	xor    %eax,%ebx
54185a:	c1 e6 08             	shl    $0x8,%esi
54185d:	0f b6 45 1a          	movzbl 0x1a(%ebp),%eax
541861:	c1 e3 08             	shl    $0x8,%ebx
541864:	33 d8                	xor    %eax,%ebx
541866:	0f b6 45 1b          	movzbl 0x1b(%ebp),%eax
54186a:	c1 e3 08             	shl    $0x8,%ebx
54186d:	33 d8                	xor    %eax,%ebx
54186f:	0f b6 45 1d          	movzbl 0x1d(%ebp),%eax
541873:	33 f0                	xor    %eax,%esi
541875:	0f b6 45 1e          	movzbl 0x1e(%ebp),%eax
541879:	c1 e6 08             	shl    $0x8,%esi
54187c:	33 f0                	xor    %eax,%esi
54187e:	0f b6 45 1f          	movzbl 0x1f(%ebp),%eax
541882:	c1 e6 08             	shl    $0x8,%esi
541885:	33 f0                	xor    %eax,%esi
541887:	eb 0e                	jmp    0x541897
541889:	33 f6                	xor    %esi,%esi
54188b:	33 db                	xor    %ebx,%ebx
54188d:	eb 08                	jmp    0x541897
54188f:	33 f6                	xor    %esi,%esi
541891:	33 db                	xor    %ebx,%ebx
541893:	33 d2                	xor    %edx,%edx
541895:	33 c9                	xor    %ecx,%ecx
541897:	33 4c 24 34          	xor    0x34(%esp),%ecx
54189b:	33 d7                	xor    %edi,%edx
54189d:	8b 6c 24 2c          	mov    0x2c(%esp),%ebp
5418a1:	33 74 24 30          	xor    0x30(%esp),%esi
5418a5:	33 5c 24 38          	xor    0x38(%esp),%ebx
5418a9:	89 4c 24 20          	mov    %ecx,0x20(%esp)
5418ad:	8b 45 10             	mov    0x10(%ebp),%eax
5418b0:	33 c1                	xor    %ecx,%eax
5418b2:	89 54 24 3c          	mov    %edx,0x3c(%esp)
5418b6:	89 44 24 30          	mov    %eax,0x30(%esp)
5418ba:	8b 45 14             	mov    0x14(%ebp),%eax
5418bd:	33 c2                	xor    %edx,%eax
5418bf:	89 5c 24 40          	mov    %ebx,0x40(%esp)
5418c3:	8b 55 18             	mov    0x18(%ebp),%edx
5418c6:	89 44 24 38          	mov    %eax,0x38(%esp)
5418ca:	33 d3                	xor    %ebx,%edx
5418cc:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
5418cf:	8b c2                	mov    %edx,%eax
5418d1:	c1 e8 10             	shr    $0x10,%eax
5418d4:	33 de                	xor    %esi,%ebx
5418d6:	0f b6 c8             	movzbl %al,%ecx
5418d9:	8b c2                	mov    %edx,%eax
5418db:	c1 e8 08             	shr    $0x8,%eax
5418de:	0f b6 c0             	movzbl %al,%eax
5418e1:	89 74 24 44          	mov    %esi,0x44(%esp)
5418e5:	8b 0c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%ecx
5418ec:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
5418f3:	8b c2                	mov    %edx,%eax
5418f5:	c1 e8 18             	shr    $0x18,%eax
5418f8:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
5418ff:	0f b6 c2             	movzbl %dl,%eax
541902:	8b 54 24 38          	mov    0x38(%esp),%edx
541906:	33 0c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%ecx
54190d:	8b c3                	mov    %ebx,%eax
54190f:	c1 e8 10             	shr    $0x10,%eax
541912:	89 4c 24 34          	mov    %ecx,0x34(%esp)
541916:	0f b6 c8             	movzbl %al,%ecx
541919:	8b c3                	mov    %ebx,%eax
54191b:	c1 e8 08             	shr    $0x8,%eax
54191e:	0f b6 c0             	movzbl %al,%eax
541921:	8b 3c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%edi
541928:	33 3c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%edi
54192f:	8b c3                	mov    %ebx,%eax
541931:	c1 e8 18             	shr    $0x18,%eax
541934:	33 3c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%edi
54193b:	0f b6 c3             	movzbl %bl,%eax
54193e:	8b 5c 24 34          	mov    0x34(%esp),%ebx
541942:	33 3c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%edi
541949:	8b c2                	mov    %edx,%eax
54194b:	c1 e8 10             	shr    $0x10,%eax
54194e:	0f b6 c8             	movzbl %al,%ecx
541951:	8b c2                	mov    %edx,%eax
541953:	c1 e8 08             	shr    $0x8,%eax
541956:	0f b6 c0             	movzbl %al,%eax
541959:	8b 34 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%esi
541960:	33 34 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%esi
541967:	8b c2                	mov    %edx,%eax
541969:	c1 e8 18             	shr    $0x18,%eax
54196c:	33 34 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%esi
541973:	0f b6 c2             	movzbl %dl,%eax
541976:	8b 54 24 30          	mov    0x30(%esp),%edx
54197a:	33 34 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%esi
541981:	8b c2                	mov    %edx,%eax
541983:	c1 e8 10             	shr    $0x10,%eax
541986:	33 f3                	xor    %ebx,%esi
541988:	0f b6 c8             	movzbl %al,%ecx
54198b:	33 df                	xor    %edi,%ebx
54198d:	8b c2                	mov    %edx,%eax
54198f:	33 fe                	xor    %esi,%edi
541991:	c1 e8 08             	shr    $0x8,%eax
541994:	0f b6 c0             	movzbl %al,%eax
541997:	8b 0c 8d 58 c9 64 00 	mov    0x64c958(,%ecx,4),%ecx
54199e:	33 0c 85 58 bd 64 00 	xor    0x64bd58(,%eax,4),%ecx
5419a5:	8b c2                	mov    %edx,%eax
5419a7:	c1 e8 18             	shr    $0x18,%eax
5419aa:	33 0c 85 58 c5 64 00 	xor    0x64c558(,%eax,4),%ecx
5419b1:	0f b6 c2             	movzbl %dl,%eax
5419b4:	33 0c 85 58 c1 64 00 	xor    0x64c158(,%eax,4),%ecx
5419bb:	33 ce                	xor    %esi,%ecx