52d68d:	cc                   	int3
52d68e:	cc                   	int3
52d68f:	cc                   	int3
52d690:	55                   	push   %ebp
52d691:	8b ec                	mov    %esp,%ebp
52d693:	56                   	push   %esi
52d694:	8b 75 08             	mov    0x8(%ebp),%esi
52d697:	8a 06                	mov    (%esi),%al
52d699:	84 c0                	test   %al,%al
52d69b:	78 11                	js     0x52d6ae
52d69d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
52d6a0:	0f b6 c0             	movzbl %al,%eax
52d6a3:	99                   	cltd
52d6a4:	5e                   	pop    %esi
52d6a5:	89 01                	mov    %eax,(%ecx)
52d6a7:	b0 01                	mov    $0x1,%al
52d6a9:	89 51 04             	mov    %edx,0x4(%ecx)
52d6ac:	5d                   	pop    %ebp
52d6ad:	c3                   	ret
52d6ae:	8a 4e 01             	mov    0x1(%esi),%cl
52d6b1:	88 4d 0b             	mov    %cl,0xb(%ebp)
52d6b4:	84 c9                	test   %cl,%cl
52d6b6:	78 27                	js     0x52d6df
52d6b8:	24 7f                	and    $0x7f,%al
52d6ba:	0f b6 c0             	movzbl %al,%eax
52d6bd:	99                   	cltd
52d6be:	8b c8                	mov    %eax,%ecx
52d6c0:	8b f2                	mov    %edx,%esi
52d6c2:	0f b6 45 0b          	movzbl 0xb(%ebp),%eax
52d6c6:	0f a4 ce 07          	shld   $0x7,%ecx,%esi
52d6ca:	99                   	cltd
52d6cb:	c1 e1 07             	shl    $0x7,%ecx
52d6ce:	0b c8                	or     %eax,%ecx
52d6d0:	8b 45 0c             	mov    0xc(%ebp),%eax
52d6d3:	0b f2                	or     %edx,%esi
52d6d5:	89 70 04             	mov    %esi,0x4(%eax)
52d6d8:	89 08                	mov    %ecx,(%eax)
52d6da:	b0 02                	mov    $0x2,%al
52d6dc:	5e                   	pop    %esi
52d6dd:	5d                   	pop    %ebp
52d6de:	c3                   	ret
52d6df:	53                   	push   %ebx
52d6e0:	0f b6 d8             	movzbl %al,%ebx
52d6e3:	0f b6 46 02          	movzbl 0x2(%esi),%eax
52d6e7:	c1 e3 0e             	shl    $0xe,%ebx
52d6ea:	0b d8                	or     %eax,%ebx
52d6ec:	0f b6 d1             	movzbl %cl,%edx
52d6ef:	84 db                	test   %bl,%bl
52d6f1:	78 20                	js     0x52d713
52d6f3:	8b 45 0c             	mov    0xc(%ebp),%eax
52d6f6:	83 e2 7f             	and    $0x7f,%edx
52d6f9:	81 e3 7f c0 1f 00    	and    $0x1fc07f,%ebx
52d6ff:	c1 e2 07             	shl    $0x7,%edx
52d702:	0b d3                	or     %ebx,%edx
52d704:	5b                   	pop    %ebx
52d705:	89 10                	mov    %edx,(%eax)
52d707:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
52d70e:	b0 03                	mov    $0x3,%al
52d710:	5e                   	pop    %esi
52d711:	5d                   	pop    %ebp
52d712:	c3                   	ret
52d713:	0f b6 46 03          	movzbl 0x3(%esi),%eax
52d717:	81 e3 7f c0 1f 00    	and    $0x1fc07f,%ebx
52d71d:	c1 e2 0e             	shl    $0xe,%edx
52d720:	0b d0                	or     %eax,%edx
52d722:	84 d2                	test   %dl,%dl
52d724:	78 1d                	js     0x52d743
52d726:	8b 45 0c             	mov    0xc(%ebp),%eax
52d729:	81 e2 7f c0 1f 00    	and    $0x1fc07f,%edx
52d72f:	c1 e3 07             	shl    $0x7,%ebx
52d732:	0b d3                	or     %ebx,%edx
52d734:	5b                   	pop    %ebx
52d735:	89 10                	mov    %edx,(%eax)
52d737:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
52d73e:	b0 04                	mov    $0x4,%al
52d740:	5e                   	pop    %esi
52d741:	5d                   	pop    %ebp
52d742:	c3                   	ret
52d743:	0f b6 46 04          	movzbl 0x4(%esi),%eax
52d747:	8b cb                	mov    %ebx,%ecx
52d749:	c1 e1 0e             	shl    $0xe,%ecx
52d74c:	81 e2 7f c0 1f 00    	and    $0x1fc07f,%edx
52d752:	0b c8                	or     %eax,%ecx
52d754:	84 c9                	test   %cl,%cl
52d756:	78 1a                	js     0x52d772
52d758:	8b 45 0c             	mov    0xc(%ebp),%eax
52d75b:	c1 e2 07             	shl    $0x7,%edx
52d75e:	0b d1                	or     %ecx,%edx
52d760:	c1 eb 12             	shr    $0x12,%ebx
52d763:	33 c9                	xor    %ecx,%ecx
52d765:	0b cb                	or     %ebx,%ecx
52d767:	89 10                	mov    %edx,(%eax)
52d769:	5b                   	pop    %ebx
52d76a:	89 48 04             	mov    %ecx,0x4(%eax)
52d76d:	b0 05                	mov    $0x5,%al
52d76f:	5e                   	pop    %esi
52d770:	5d                   	pop    %ebp
52d771:	c3                   	ret
52d772:	0f b6 46 05          	movzbl 0x5(%esi),%eax
52d776:	c1 e3 07             	shl    $0x7,%ebx
52d779:	0b da                	or     %edx,%ebx
52d77b:	c1 e2 0e             	shl    $0xe,%edx
52d77e:	0b d0                	or     %eax,%edx
52d780:	84 d2                	test   %dl,%dl
52d782:	78 26                	js     0x52d7aa
52d784:	8b 45 0c             	mov    0xc(%ebp),%eax
52d787:	81 e1 7f c0 1f 00    	and    $0x1fc07f,%ecx
52d78d:	c1 e1 07             	shl    $0x7,%ecx
52d790:	0b ca                	or     %edx,%ecx
52d792:	c1 eb 12             	shr    $0x12,%ebx
52d795:	89 4d 08             	mov    %ecx,0x8(%ebp)
52d798:	33 c9                	xor    %ecx,%ecx
52d79a:	8b 55 08             	mov    0x8(%ebp),%edx
52d79d:	0b cb                	or     %ebx,%ecx
52d79f:	5b                   	pop    %ebx
52d7a0:	89 10                	mov    %edx,(%eax)
52d7a2:	89 48 04             	mov    %ecx,0x4(%eax)
52d7a5:	b0 06                	mov    $0x6,%al
52d7a7:	5e                   	pop    %esi
52d7a8:	5d                   	pop    %ebp
52d7a9:	c3                   	ret
52d7aa:	0f b6 46 06          	movzbl 0x6(%esi),%eax
52d7ae:	c1 e1 0e             	shl    $0xe,%ecx
52d7b1:	0b c8                	or     %eax,%ecx
52d7b3:	84 c9                	test   %cl,%cl
52d7b5:	78 22                	js     0x52d7d9
52d7b7:	8b 45 0c             	mov    0xc(%ebp),%eax
52d7ba:	c1 e2 07             	shl    $0x7,%edx
52d7bd:	33 d1                	xor    %ecx,%edx
52d7bf:	c1 eb 0b             	shr    $0xb,%ebx
52d7c2:	81 e2 80 3f e0 0f    	and    $0xfe03f80,%edx
52d7c8:	33 d1                	xor    %ecx,%edx
52d7ca:	33 c9                	xor    %ecx,%ecx
52d7cc:	0b cb                	or     %ebx,%ecx
52d7ce:	89 10                	mov    %edx,(%eax)
52d7d0:	5b                   	pop    %ebx
52d7d1:	89 48 04             	mov    %ecx,0x4(%eax)
52d7d4:	b0 07                	mov    $0x7,%al
52d7d6:	5e                   	pop    %esi
52d7d7:	5d                   	pop    %ebp
52d7d8:	c3                   	ret
52d7d9:	0f b6 46 07          	movzbl 0x7(%esi),%eax
52d7dd:	81 e1 7f c0 1f 00    	and    $0x1fc07f,%ecx
52d7e3:	c1 e2 0e             	shl    $0xe,%edx
52d7e6:	0b d0                	or     %eax,%edx
52d7e8:	c1 e1 07             	shl    $0x7,%ecx
52d7eb:	84 d2                	test   %dl,%dl
52d7ed:	78 1d                	js     0x52d80c
52d7ef:	8b 45 0c             	mov    0xc(%ebp),%eax
52d7f2:	81 e2 7f c0 1f f0    	and    $0xf01fc07f,%edx
52d7f8:	0b d1                	or     %ecx,%edx
52d7fa:	c1 eb 04             	shr    $0x4,%ebx
52d7fd:	33 c9                	xor    %ecx,%ecx
52d7ff:	0b cb                	or     %ebx,%ecx
52d801:	5b                   	pop    %ebx
52d802:	89 10                	mov    %edx,(%eax)
52d804:	89 48 04             	mov    %ecx,0x4(%eax)
52d807:	b0 08                	mov    $0x8,%al
52d809:	5e                   	pop    %esi
52d80a:	5d                   	pop    %ebp
52d80b:	c3                   	ret
52d80c:	0f b6 46 08          	movzbl 0x8(%esi),%eax
52d810:	81 e2 7f c0 1f 00    	and    $0x1fc07f,%edx
52d816:	0b d1                	or     %ecx,%edx
52d818:	c1 e3 04             	shl    $0x4,%ebx
52d81b:	c1 e2 08             	shl    $0x8,%edx
52d81e:	33 c9                	xor    %ecx,%ecx
52d820:	0b d0                	or     %eax,%edx
52d822:	0f b6 46 04          	movzbl 0x4(%esi),%eax
52d826:	c1 e8 03             	shr    $0x3,%eax
52d829:	83 e0 0f             	and    $0xf,%eax
52d82c:	0b c3                	or     %ebx,%eax
52d82e:	0b c8                	or     %eax,%ecx
52d830:	8b 45 0c             	mov    0xc(%ebp),%eax
52d833:	5b                   	pop    %ebx
52d834:	5e                   	pop    %esi
52d835:	89 10                	mov    %edx,(%eax)
52d837:	89 48 04             	mov    %ecx,0x4(%eax)
52d83a:	b0 09                	mov    $0x9,%al
52d83c:	5d                   	pop    %ebp
52d83d:	c3                   	ret
52d83e:	cc                   	int3
52d83f:	cc                   	int3
52d840:	55                   	push   %ebp
52d841:	8b ec                	mov    %esp,%ebp
52d843:	83 ec 08             	sub    $0x8,%esp
52d846:	56                   	push   %esi
52d847:	8b 75 08             	mov    0x8(%ebp),%esi
52d84a:	0f b6 56 01          	movzbl 0x1(%esi),%edx
52d84e:	0f b6 0e             	movzbl (%esi),%ecx
52d851:	84 d2                	test   %dl,%dl
52d853:	78 14                	js     0x52d869
52d855:	8b 45 0c             	mov    0xc(%ebp),%eax
52d858:	83 e1 7f             	and    $0x7f,%ecx
52d85b:	c1 e1 07             	shl    $0x7,%ecx
52d85e:	0b ca                	or     %edx,%ecx
52d860:	5e                   	pop    %esi
52d861:	89 08                	mov    %ecx,(%eax)
52d863:	b0 02                	mov    $0x2,%al
52d865:	8b e5                	mov    %ebp,%esp
52d867:	5d                   	pop    %ebp
52d868:	c3                   	ret
52d869:	0f b6 46 02          	movzbl 0x2(%esi),%eax
52d86d:	c1 e1 0e             	shl    $0xe,%ecx
52d870:	0b c8                	or     %eax,%ecx
52d872:	84 c9                	test   %cl,%cl
52d874:	78 1a                	js     0x52d890
52d876:	8b 45 0c             	mov    0xc(%ebp),%eax
52d879:	83 e2 7f             	and    $0x7f,%edx
52d87c:	c1 e2 07             	shl    $0x7,%edx
52d87f:	81 e1 7f c0 1f 00    	and    $0x1fc07f,%ecx
52d885:	0b d1                	or     %ecx,%edx
52d887:	5e                   	pop    %esi
52d888:	89 10                	mov    %edx,(%eax)
52d88a:	b0 03                	mov    $0x3,%al
52d88c:	8b e5                	mov    %ebp,%esp
52d88e:	5d                   	pop    %ebp
52d88f:	c3                   	ret
52d890:	8d 45 f8             	lea    -0x8(%ebp),%eax
52d893:	50                   	push   %eax
52d894:	56                   	push   %esi
52d895:	e8 f6 fd ff ff       	call   0x52d690
52d89a:	8b 4d f8             	mov    -0x8(%ebp),%ecx
52d89d:	8a d0                	mov    %al,%dl
52d89f:	33 c0                	xor    %eax,%eax
52d8a1:	83 c4 08             	add    $0x8,%esp
52d8a4:	3b 45 fc             	cmp    -0x4(%ebp),%eax
52d8a7:	8b 45 0c             	mov    0xc(%ebp),%eax
52d8aa:	75 09                	jne    0x52d8b5
52d8ac:	89 08                	mov    %ecx,(%eax)
52d8ae:	8a c2                	mov    %dl,%al
52d8b0:	5e                   	pop    %esi
52d8b1:	8b e5                	mov    %ebp,%esp
52d8b3:	5d                   	pop    %ebp
52d8b4:	c3                   	ret
52d8b5:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
52d8bb:	8a c2                	mov    %dl,%al
52d8bd:	5e                   	pop    %esi
52d8be:	8b e5                	mov    %ebp,%esp
52d8c0:	5d                   	pop    %ebp
52d8c1:	c3                   	ret
52d8c2:	cc                   	int3
52d8c3:	cc                   	int3
52d8c4:	cc                   	int3
52d8c5:	cc                   	int3
52d8c6:	cc                   	int3
52d8c7:	cc                   	int3
52d8c8:	cc                   	int3
52d8c9:	cc                   	int3
52d8ca:	cc                   	int3
52d8cb:	cc                   	int3
52d8cc:	cc                   	int3
52d8cd:	cc                   	int3
52d8ce:	cc                   	int3
52d8cf:	cc                   	int3
52d8d0:	55                   	push   %ebp
52d8d1:	8b ec                	mov    %esp,%ebp
52d8d3:	8b 4d 08             	mov    0x8(%ebp),%ecx
52d8d6:	8b 41 08             	mov    0x8(%ecx),%eax
52d8d9:	85 c0                	test   %eax,%eax
52d8db:	75 1a                	jne    0x52d8f7
52d8dd:	39 41 74             	cmp    %eax,0x74(%ecx)
52d8e0:	75 0c                	jne    0x52d8ee
52d8e2:	8b 01                	mov    (%ecx),%eax
52d8e4:	f6 40 4c 08          	testb  $0x8,0x4c(%eax)
52d8e8:	75 04                	jne    0x52d8ee
52d8ea:	c6 41 17 01          	movb   $0x1,0x17(%ecx)
52d8ee:	89 4d 08             	mov    %ecx,0x8(%ebp)
52d8f1:	5d                   	pop    %ebp
52d8f2:	e9 19 4b 01 00       	jmp    0x542410
52d8f7:	5d                   	pop    %ebp
52d8f8:	c3                   	ret
52d8f9:	cc                   	int3
52d8fa:	cc                   	int3
52d8fb:	cc                   	int3
52d8fc:	cc                   	int3
52d8fd:	cc                   	int3
52d8fe:	cc                   	int3
52d8ff:	cc                   	int3
52d900:	55                   	push   %ebp
52d901:	8b ec                	mov    %esp,%ebp
52d903:	56                   	push   %esi
52d904:	8b 75 08             	mov    0x8(%ebp),%esi
52d907:	57                   	push   %edi
52d908:	8b 7e 08             	mov    0x8(%esi),%edi
52d90b:	85 ff                	test   %edi,%edi
52d90d:	75 1c                	jne    0x52d92b
52d90f:	39 7e 74             	cmp    %edi,0x74(%esi)
52d912:	75 0c                	jne    0x52d920
52d914:	8b 06                	mov    (%esi),%eax
52d916:	f6 40 4c 08          	testb  $0x8,0x4c(%eax)
52d91a:	75 04                	jne    0x52d920
52d91c:	c6 46 17 01          	movb   $0x1,0x17(%esi)
52d920:	56                   	push   %esi
52d921:	e8 ea 4a 01 00       	call   0x542410
52d926:	83 c4 04             	add    $0x4,%esp
52d929:	8b f8                	mov    %eax,%edi
52d92b:	8b 55 10             	mov    0x10(%ebp),%edx
52d92e:	83 fa 02             	cmp    $0x2,%edx
52d931:	75 0c                	jne    0x52d93f
52d933:	8b 4e 74             	mov    0x74(%esi),%ecx
52d936:	85 c9                	test   %ecx,%ecx
52d938:	0f 45 f1             	cmovne %ecx,%esi
52d93b:	c6 46 15 01          	movb   $0x1,0x15(%esi)
52d93f:	0f be 45 18          	movsbl 0x18(%ebp),%eax
52d943:	50                   	push   %eax
52d944:	ff 75 14             	push   0x14(%ebp)
52d947:	6a 00                	push   $0x0
52d949:	52                   	push   %edx
52d94a:	ff 75 0c             	push   0xc(%ebp)
52d94d:	6a 44                	push   $0x44
52d94f:	57                   	push   %edi
52d950:	e8 3b 42 01 00       	call   0x541b90
52d955:	8b 47 6c             	mov    0x6c(%edi),%eax
52d958:	83 c4 1c             	add    $0x1c,%esp
52d95b:	85 c0                	test   %eax,%eax
52d95d:	7e 0f                	jle    0x52d96e
52d95f:	0f b6 55 1c          	movzbl 0x1c(%ebp),%edx
52d963:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
52d966:	8b 47 68             	mov    0x68(%edi),%eax
52d969:	66 89 54 88 ee       	mov    %dx,-0x12(%eax,%ecx,4)
52d96e:	5f                   	pop    %edi
52d96f:	5e                   	pop    %esi
52d970:	5d                   	pop    %ebp
52d971:	c3                   	ret
52d972:	cc                   	int3
52d973:	cc                   	int3
52d974:	cc                   	int3
52d975:	cc                   	int3
52d976:	cc                   	int3
52d977:	cc                   	int3
52d978:	cc                   	int3
52d979:	cc                   	int3
52d97a:	cc                   	int3
52d97b:	cc                   	int3
52d97c:	cc                   	int3
52d97d:	cc                   	int3
52d97e:	cc                   	int3
52d97f:	cc                   	int3
52d980:	55                   	push   %ebp
52d981:	8b ec                	mov    %esp,%ebp
52d983:	56                   	push   %esi
52d984:	8b 75 0c             	mov    0xc(%ebp),%esi
52d987:	85 f6                	test   %esi,%esi
52d989:	74 18                	je     0x52d9a3
52d98b:	8b 16                	mov    (%esi),%edx
52d98d:	33 c0                	xor    %eax,%eax
52d98f:	85 d2                	test   %edx,%edx
52d991:	7e 10                	jle    0x52d9a3
52d993:	8d 4e 10             	lea    0x10(%esi),%ecx