5335f4:	8b ca                	mov    %edx,%ecx
5335f6:	0b 6c 24 10          	or     0x10(%esp),%ebp
5335fa:	03 c6                	add    %esi,%eax
5335fc:	89 44 24 10          	mov    %eax,0x10(%esp)
533600:	13 ea                	adc    %edx,%ebp
533602:	33 c0                	xor    %eax,%eax
533604:	0f a4 f2 15          	shld   $0x15,%esi,%edx
533608:	c1 e9 0b             	shr    $0xb,%ecx
53360b:	0b c2                	or     %edx,%eax
53360d:	c1 e6 15             	shl    $0x15,%esi
533610:	0b ce                	or     %esi,%ecx
533612:	33 c5                	xor    %ebp,%eax
533614:	33 4c 24 10          	xor    0x10(%esp),%ecx
533618:	8b f7                	mov    %edi,%esi
53361a:	01 5c 24 20          	add    %ebx,0x20(%esp)
53361e:	89 44 24 18          	mov    %eax,0x18(%esp)
533622:	8b 44 24 28          	mov    0x28(%esp),%eax
533626:	13 c7                	adc    %edi,%eax
533628:	c1 ee 0f             	shr    $0xf,%esi
53362b:	0f a4 df 11          	shld   $0x11,%ebx,%edi
53362f:	33 d2                	xor    %edx,%edx
533631:	c1 e3 11             	shl    $0x11,%ebx
533634:	0b d7                	or     %edi,%edx
533636:	0b f3                	or     %ebx,%esi
533638:	33 d0                	xor    %eax,%edx
53363a:	33 74 24 20          	xor    0x20(%esp),%esi
53363e:	33 db                	xor    %ebx,%ebx
533640:	0b 5c 24 20          	or     0x20(%esp),%ebx
533644:	83 6c 24 3c 01       	subl   $0x1,0x3c(%esp)
533649:	89 44 24 20          	mov    %eax,0x20(%esp)
53364d:	8b 44 24 18          	mov    0x18(%esp),%eax
533651:	89 5c 24 28          	mov    %ebx,0x28(%esp)
533655:	0f 85 55 ff ff ff    	jne    0x5335b0
53365b:	8b 7c 24 34          	mov    0x34(%esp),%edi
53365f:	8b 5c 24 1c          	mov    0x1c(%esp),%ebx
533663:	89 54 24 24          	mov    %edx,0x24(%esp)
533667:	31 6c 24 14          	xor    %ebp,0x14(%esp)
53366b:	33 ed                	xor    %ebp,%ebp
53366d:	31 5c 24 10          	xor    %ebx,0x10(%esp)
533671:	bb ee 00 00 00       	mov    $0xee,%ebx
533676:	83 7f 2c 10          	cmpl   $0x10,0x2c(%edi)
53367a:	74 05                	je     0x533681
53367c:	bb ff 00 00 00       	mov    $0xff,%ebx
533681:	8b 47 34             	mov    0x34(%edi),%eax
533684:	33 5c 24 20          	xor    0x20(%esp),%ebx
533688:	33 6c 24 28          	xor    0x28(%esp),%ebp
53368c:	85 c0                	test   %eax,%eax
53368e:	89 44 24 28          	mov    %eax,0x28(%esp)
533692:	8b 44 24 18          	mov    0x18(%esp),%eax
533696:	89 5c 24 3c          	mov    %ebx,0x3c(%esp)
53369a:	0f 8e b7 00 00 00    	jle    0x533757
5336a0:	89 5c 24 3c          	mov    %ebx,0x3c(%esp)
5336a4:	eb 04                	jmp    0x5336aa
5336a6:	8b 44 24 18          	mov    0x18(%esp),%eax
5336aa:	01 74 24 10          	add    %esi,0x10(%esp)
5336ae:	8b da                	mov    %edx,%ebx
5336b0:	11 54 24 14          	adc    %edx,0x14(%esp)
5336b4:	33 ff                	xor    %edi,%edi
5336b6:	0f a4 f2 0d          	shld   $0xd,%esi,%edx
5336ba:	c1 eb 13             	shr    $0x13,%ebx
5336bd:	c1 e6 0d             	shl    $0xd,%esi
5336c0:	0b fa                	or     %edx,%edi
5336c2:	33 7c 24 14          	xor    0x14(%esp),%edi
5336c6:	0b de                	or     %esi,%ebx
5336c8:	33 5c 24 10          	xor    0x10(%esp),%ebx
5336cc:	8b f0                	mov    %eax,%esi
5336ce:	01 4c 24 3c          	add    %ecx,0x3c(%esp)
5336d2:	13 e8                	adc    %eax,%ebp
5336d4:	c1 ee 10             	shr    $0x10,%esi
5336d7:	0f a4 c8 10          	shld   $0x10,%ecx,%eax
5336db:	33 d2                	xor    %edx,%edx
5336dd:	c1 e1 10             	shl    $0x10,%ecx
5336e0:	0b d0                	or     %eax,%edx
5336e2:	8b 44 24 14          	mov    0x14(%esp),%eax
5336e6:	0b f1                	or     %ecx,%esi
5336e8:	33 74 24 3c          	xor    0x3c(%esp),%esi
5336ec:	33 d5                	xor    %ebp,%edx
5336ee:	33 c9                	xor    %ecx,%ecx
5336f0:	0b 4c 24 10          	or     0x10(%esp),%ecx
5336f4:	03 c6                	add    %esi,%eax
5336f6:	89 44 24 10          	mov    %eax,0x10(%esp)
5336fa:	13 ca                	adc    %edx,%ecx
5336fc:	33 c0                	xor    %eax,%eax
5336fe:	89 4c 24 14          	mov    %ecx,0x14(%esp)
533702:	8b ca                	mov    %edx,%ecx
533704:	0f a4 f2 15          	shld   $0x15,%esi,%edx
533708:	c1 e9 0b             	shr    $0xb,%ecx
53370b:	c1 e6 15             	shl    $0x15,%esi
53370e:	0b c2                	or     %edx,%eax
533710:	33 44 24 14          	xor    0x14(%esp),%eax
533714:	0b ce                	or     %esi,%ecx
533716:	33 4c 24 10          	xor    0x10(%esp),%ecx
53371a:	8b f7                	mov    %edi,%esi
53371c:	01 5c 24 3c          	add    %ebx,0x3c(%esp)
533720:	89 44 24 18          	mov    %eax,0x18(%esp)
533724:	13 ef                	adc    %edi,%ebp
533726:	33 d2                	xor    %edx,%edx
533728:	0f a4 df 11          	shld   $0x11,%ebx,%edi
53372c:	c1 ee 0f             	shr    $0xf,%esi
53372f:	c1 e3 11             	shl    $0x11,%ebx
533732:	0b d7                	or     %edi,%edx
533734:	0b f3                	or     %ebx,%esi
533736:	33 d5                	xor    %ebp,%edx
533738:	33 74 24 3c          	xor    0x3c(%esp),%esi
53373c:	8b dd                	mov    %ebp,%ebx
53373e:	33 ed                	xor    %ebp,%ebp
533740:	89 54 24 24          	mov    %edx,0x24(%esp)
533744:	0b 6c 24 3c          	or     0x3c(%esp),%ebp
533748:	83 6c 24 28 01       	subl   $0x1,0x28(%esp)
53374d:	89 5c 24 3c          	mov    %ebx,0x3c(%esp)
533751:	0f 85 4f ff ff ff    	jne    0x5336a6
533757:	8b 44 24 38          	mov    0x38(%esp),%eax
53375b:	8b d1                	mov    %ecx,%edx
53375d:	8b 7c 24 38          	mov    0x38(%esp),%edi
533761:	33 d3                	xor    %ebx,%edx
533763:	8b 5c 24 18          	mov    0x18(%esp),%ebx
533767:	33 d6                	xor    %esi,%edx
533769:	33 54 24 10          	xor    0x10(%esp),%edx
53376d:	33 dd                	xor    %ebp,%ebx
53376f:	33 5c 24 24          	xor    0x24(%esp),%ebx
533773:	33 5c 24 14          	xor    0x14(%esp),%ebx
533777:	88 10                	mov    %dl,(%eax)
533779:	8b c2                	mov    %edx,%eax
53377b:	c1 e8 08             	shr    $0x8,%eax
53377e:	88 47 01             	mov    %al,0x1(%edi)
533781:	8b c2                	mov    %edx,%eax
533783:	c1 e8 10             	shr    $0x10,%eax
533786:	88 47 02             	mov    %al,0x2(%edi)
533789:	8b c7                	mov    %edi,%eax
53378b:	8b 7c 24 34          	mov    0x34(%esp),%edi
53378f:	c1 ea 18             	shr    $0x18,%edx
533792:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
533799:	00
53379a:	88 50 03             	mov    %dl,0x3(%eax)
53379d:	8b d0                	mov    %eax,%edx
53379f:	8b c3                	mov    %ebx,%eax
5337a1:	c1 e8 08             	shr    $0x8,%eax
5337a4:	88 42 05             	mov    %al,0x5(%edx)
5337a7:	8b c3                	mov    %ebx,%eax
5337a9:	88 5a 04             	mov    %bl,0x4(%edx)
5337ac:	c1 e8 10             	shr    $0x10,%eax
5337af:	c1 eb 18             	shr    $0x18,%ebx
5337b2:	88 42 06             	mov    %al,0x6(%edx)
5337b5:	88 5a 07             	mov    %bl,0x7(%edx)
5337b8:	83 7f 2c 08          	cmpl   $0x8,0x2c(%edi)
5337bc:	0f 84 33 01 00 00    	je     0x5338f5
5337c2:	8b 54 24 24          	mov    0x24(%esp),%edx
5337c6:	81 f6 dd 00 00 00    	xor    $0xdd,%esi
5337cc:	8b 47 34             	mov    0x34(%edi),%eax
5337cf:	83 f2 00             	xor    $0x0,%edx
5337d2:	89 54 24 24          	mov    %edx,0x24(%esp)
5337d6:	89 44 24 34          	mov    %eax,0x34(%esp)
5337da:	85 c0                	test   %eax,%eax
5337dc:	0f 8e bb 00 00 00    	jle    0x53389d
5337e2:	01 74 24 10          	add    %esi,0x10(%esp)
5337e6:	8b da                	mov    %edx,%ebx
5337e8:	8b 44 24 14          	mov    0x14(%esp),%eax
5337ec:	13 c2                	adc    %edx,%eax
5337ee:	c1 eb 13             	shr    $0x13,%ebx
5337f1:	0f a4 f2 0d          	shld   $0xd,%esi,%edx
5337f5:	33 ff                	xor    %edi,%edi
5337f7:	89 44 24 14          	mov    %eax,0x14(%esp)
5337fb:	c1 e6 0d             	shl    $0xd,%esi
5337fe:	0b fa                	or     %edx,%edi
533800:	0b de                	or     %esi,%ebx
533802:	33 f8                	xor    %eax,%edi
533804:	33 5c 24 10          	xor    0x10(%esp),%ebx
533808:	01 4c 24 3c          	add    %ecx,0x3c(%esp)
53380c:	8b 44 24 18          	mov    0x18(%esp),%eax
533810:	8b f0                	mov    %eax,%esi
533812:	13 e8                	adc    %eax,%ebp
533814:	c1 ee 10             	shr    $0x10,%esi
533817:	0f a4 c8 10          	shld   $0x10,%ecx,%eax
53381b:	33 d2                	xor    %edx,%edx
53381d:	c1 e1 10             	shl    $0x10,%ecx
533820:	0b d0                	or     %eax,%edx
533822:	8b 44 24 14          	mov    0x14(%esp),%eax
533826:	0b f1                	or     %ecx,%esi
533828:	33 74 24 3c          	xor    0x3c(%esp),%esi
53382c:	33 d5                	xor    %ebp,%edx
53382e:	33 c9                	xor    %ecx,%ecx
533830:	0b 4c 24 10          	or     0x10(%esp),%ecx
533834:	03 c6                	add    %esi,%eax
533836:	89 44 24 10          	mov    %eax,0x10(%esp)
53383a:	13 ca                	adc    %edx,%ecx
53383c:	33 c0                	xor    %eax,%eax
53383e:	89 4c 24 14          	mov    %ecx,0x14(%esp)
533842:	8b ca                	mov    %edx,%ecx
533844:	0f a4 f2 15          	shld   $0x15,%esi,%edx
533848:	c1 e9 0b             	shr    $0xb,%ecx
53384b:	0b c2                	or     %edx,%eax
53384d:	c1 e6 15             	shl    $0x15,%esi
533850:	33 44 24 14          	xor    0x14(%esp),%eax
533854:	0b ce                	or     %esi,%ecx
533856:	33 4c 24 10          	xor    0x10(%esp),%ecx
53385a:	8b f7                	mov    %edi,%esi
53385c:	89 44 24 18          	mov    %eax,0x18(%esp)
533860:	8b 44 24 3c          	mov    0x3c(%esp),%eax
533864:	03 c3                	add    %ebx,%eax
533866:	89 44 24 3c          	mov    %eax,0x3c(%esp)
53386a:	13 ef                	adc    %edi,%ebp
53386c:	c1 ee 0f             	shr    $0xf,%esi
53386f:	0f a4 df 11          	shld   $0x11,%ebx,%edi
533873:	33 d2                	xor    %edx,%edx
533875:	c1 e3 11             	shl    $0x11,%ebx
533878:	0b d7                	or     %edi,%edx
53387a:	0b f3                	or     %ebx,%esi
53387c:	33 d5                	xor    %ebp,%edx
53387e:	33 f0                	xor    %eax,%esi
533880:	8b c5                	mov    %ebp,%eax
533882:	33 ed                	xor    %ebp,%ebp
533884:	0b 6c 24 3c          	or     0x3c(%esp),%ebp
533888:	83 6c 24 34 01       	subl   $0x1,0x34(%esp)
53388d:	89 44 24 3c          	mov    %eax,0x3c(%esp)
533891:	0f 85 4b ff ff ff    	jne    0x5337e2
533897:	89 54 24 24          	mov    %edx,0x24(%esp)
53389b:	eb 04                	jmp    0x5338a1
53389d:	8b 44 24 3c          	mov    0x3c(%esp),%eax
5338a1:	8b 5c 24 38          	mov    0x38(%esp),%ebx
5338a5:	33 c8                	xor    %eax,%ecx
5338a7:	8b 54 24 18          	mov    0x18(%esp),%edx
5338ab:	33 ce                	xor    %esi,%ecx
5338ad:	33 4c 24 10          	xor    0x10(%esp),%ecx
5338b1:	33 d5                	xor    %ebp,%edx
5338b3:	33 54 24 24          	xor    0x24(%esp),%edx
5338b7:	8b c1                	mov    %ecx,%eax
5338b9:	33 54 24 14          	xor    0x14(%esp),%edx
5338bd:	c1 e8 08             	shr    $0x8,%eax
5338c0:	88 43 09             	mov    %al,0x9(%ebx)
5338c3:	8b c1                	mov    %ecx,%eax
5338c5:	c1 e8 10             	shr    $0x10,%eax
5338c8:	88 43 0a             	mov    %al,0xa(%ebx)
5338cb:	8b c2                	mov    %edx,%eax
5338cd:	c1 e8 08             	shr    $0x8,%eax
5338d0:	88 43 0d             	mov    %al,0xd(%ebx)
5338d3:	8b c2                	mov    %edx,%eax
5338d5:	88 4b 08             	mov    %cl,0x8(%ebx)
5338d8:	c1 e9 18             	shr    $0x18,%ecx
5338db:	c1 e8 10             	shr    $0x10,%eax
5338de:	88 53 0c             	mov    %dl,0xc(%ebx)
5338e1:	c1 ea 18             	shr    $0x18,%edx
5338e4:	88 4b 0b             	mov    %cl,0xb(%ebx)
5338e7:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
5338ee:	00
5338ef:	88 43 0e             	mov    %al,0xe(%ebx)
5338f2:	88 53 0f             	mov    %dl,0xf(%ebx)
5338f5:	5f                   	pop    %edi
5338f6:	5e                   	pop    %esi
5338f7:	5d                   	pop    %ebp
5338f8:	b8 01 00 00 00       	mov    $0x1,%eax
5338fd:	5b                   	pop    %ebx
5338fe:	83 c4 20             	add    $0x20,%esp
533901:	c3                   	ret
533902:	66 90                	xchg   %ax,%ax
533904:	72 35                	jb     0x53393b
533906:	53                   	push   %ebx
533907:	00 5a 35             	add    %bl,0x35(%edx)
53390a:	53                   	push   %ebx
53390b:	00 42 35             	add    %al,0x35(%edx)
53390e:	53                   	push   %ebx
53390f:	00 2a                	add    %ch,(%edx)
533911:	35 53 00 21 35       	xor    $0x35210053,%eax
533916:	53                   	push   %ebx
533917:	00 15 35 53 00 09    	add    %dl,0x9005335
53391d:	35 53 00 53 55       	xor    $0x55530053,%eax
533922:	56                   	push   %esi
533923:	57                   	push   %edi
533924:	8b 4c 24 18          	mov    0x18(%esp),%ecx
533928:	0f b6 41 07          	movzbl 0x7(%ecx),%eax
53392c:	99                   	cltd
53392d:	8b d8                	mov    %eax,%ebx
53392f:	8b ea                	mov    %edx,%ebp
533931:	0f b6 41 06          	movzbl 0x6(%ecx),%eax
533935:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
533939:	99                   	cltd
53393a:	0b ea                	or     %edx,%ebp
53393c:	c1 e3 08             	shl    $0x8,%ebx
53393f:	0b d8                	or     %eax,%ebx
533941:	0f b6 41 05          	movzbl 0x5(%ecx),%eax
533945:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
533949:	99                   	cltd
53394a:	0b ea                	or     %edx,%ebp
53394c:	c1 e3 08             	shl    $0x8,%ebx
53394f:	0b d8                	or     %eax,%ebx
533951:	0f b6 41 04          	movzbl 0x4(%ecx),%eax
533955:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
533959:	99                   	cltd
53395a:	0b ea                	or     %edx,%ebp
53395c:	c1 e3 08             	shl    $0x8,%ebx
53395f:	0b d8                	or     %eax,%ebx
533961:	0f b6 41 03          	movzbl 0x3(%ecx),%eax
533965:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
533969:	99                   	cltd
53396a:	0b ea                	or     %edx,%ebp
53396c:	c1 e3 08             	shl    $0x8,%ebx
53396f:	0b d8                	or     %eax,%ebx
533971:	0f b6 41 02          	movzbl 0x2(%ecx),%eax
533975:	99                   	cltd
533976:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
53397a:	0b ea                	or     %edx,%ebp
53397c:	c1 e3 08             	shl    $0x8,%ebx
53397f:	0b d8                	or     %eax,%ebx
533981:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
533985:	99                   	cltd
533986:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
53398a:	0b ea                	or     %edx,%ebp
53398c:	c1 e3 08             	shl    $0x8,%ebx
53398f:	0b d8                	or     %eax,%ebx
533991:	0f b6 01             	movzbl (%ecx),%eax
533994:	99                   	cltd
533995:	0f a4 dd 08          	shld   $0x8,%ebx,%ebp
533999:	c1 e3 08             	shl    $0x8,%ebx
53399c:	0b ea                	or     %edx,%ebp
53399e:	0b d8                	or     %eax,%ebx
5339a0:	0f b6 41 0f          	movzbl 0xf(%ecx),%eax
5339a4:	99                   	cltd
5339a5:	8b f0                	mov    %eax,%esi
5339a7:	8b fa                	mov    %edx,%edi
5339a9:	0f b6 41 0e          	movzbl 0xe(%ecx),%eax
5339ad:	0f a4 f7 08          	shld   $0x8,%esi,%edi
5339b1:	99                   	cltd
5339b2:	c1 e6 08             	shl    $0x8,%esi
5339b5:	0b fa                	or     %edx,%edi
5339b7:	0b f0                	or     %eax,%esi
5339b9:	0f b6 41 0d          	movzbl 0xd(%ecx),%eax
5339bd:	0f a4 f7 08          	shld   $0x8,%esi,%edi
5339c1:	99                   	cltd
5339c2:	c1 e6 08             	shl    $0x8,%esi
5339c5:	0b fa                	or     %edx,%edi
5339c7:	0b f0                	or     %eax,%esi
5339c9:	0f b6 41 0c          	movzbl 0xc(%ecx),%eax
5339cd:	0f a4 f7 08          	shld   $0x8,%esi,%edi
5339d1:	99                   	cltd
5339d2:	c1 e6 08             	shl    $0x8,%esi
5339d5:	0b fa                	or     %edx,%edi
5339d7:	0b f0                	or     %eax,%esi
5339d9:	0f b6 41 0b          	movzbl 0xb(%ecx),%eax
5339dd:	0f a4 f7 08          	shld   $0x8,%esi,%edi
5339e1:	99                   	cltd
5339e2:	c1 e6 08             	shl    $0x8,%esi
5339e5:	0b fa                	or     %edx,%edi
5339e7:	0b f0                	or     %eax,%esi
5339e9:	0f a4 f7 08          	shld   $0x8,%esi,%edi
5339ed:	c1 e6 08             	shl    $0x8,%esi
5339f0:	0f b6 41 0a          	movzbl 0xa(%ecx),%eax
5339f4:	99                   	cltd
5339f5:	0b f0                	or     %eax,%esi
5339f7:	0b fa                	or     %edx,%edi
5339f9:	0f b6 41 09          	movzbl 0x9(%ecx),%eax
5339fd:	0f a4 f7 08          	shld   $0x8,%esi,%edi