44a6b0:	55                   	push   %ebp
44a6b1:	8b ec                	mov    %esp,%ebp
44a6b3:	83 ec 08             	sub    $0x8,%esp
44a6b6:	53                   	push   %ebx
44a6b7:	57                   	push   %edi
44a6b8:	8b 7d 08             	mov    0x8(%ebp),%edi
44a6bb:	8b d9                	mov    %ecx,%ebx
44a6bd:	85 ff                	test   %edi,%edi
44a6bf:	74 7b                	je     0x44a73c
44a6c1:	56                   	push   %esi
44a6c2:	6a 00                	push   $0x0
44a6c4:	68 18 d0 68 00       	push   $0x68d018
44a6c9:	e8 b2 8c 01 00       	call   0x463380
44a6ce:	a1 44 d0 68 00       	mov    0x68d044,%eax
44a6d3:	83 c4 08             	add    $0x8,%esp
44a6d6:	8b 48 28             	mov    0x28(%eax),%ecx
44a6d9:	8b 70 2c             	mov    0x2c(%eax),%esi
44a6dc:	8b 07                	mov    (%edi),%eax
44a6de:	89 4d f8             	mov    %ecx,-0x8(%ebp)
44a6e1:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a6e4:	51                   	push   %ecx
44a6e5:	8b cf                	mov    %edi,%ecx
44a6e7:	ff 50 48             	call   *0x48(%eax)
44a6ea:	3b 70 04             	cmp    0x4(%eax),%esi
44a6ed:	5e                   	pop    %esi
44a6ee:	75 4c                	jne    0x44a73c
44a6f0:	f6 47 04 01          	testb  $0x1,0x4(%edi)
44a6f4:	8d 4b 04             	lea    0x4(%ebx),%ecx
44a6f7:	74 0f                	je     0x44a708
44a6f9:	8b 47 04             	mov    0x4(%edi),%eax
44a6fc:	83 e0 fc             	and    $0xfffffffc,%eax
44a6ff:	83 c0 04             	add    $0x4,%eax
44a702:	50                   	push   %eax
44a703:	e8 d8 5f 00 00       	call   0x4506e0
44a708:	8b 4f 08             	mov    0x8(%edi),%ecx
44a70b:	f6 c1 07             	test   $0x7,%cl
44a70e:	74 36                	je     0x44a746
44a710:	f6 c1 01             	test   $0x1,%cl
44a713:	74 06                	je     0x44a71b
44a715:	8b 47 10             	mov    0x10(%edi),%eax
44a718:	89 43 10             	mov    %eax,0x10(%ebx)
44a71b:	f6 c1 02             	test   $0x2,%cl
44a71e:	74 06                	je     0x44a726
44a720:	8b 47 14             	mov    0x14(%edi),%eax
44a723:	89 43 14             	mov    %eax,0x14(%ebx)
44a726:	f6 c1 04             	test   $0x4,%cl
44a729:	74 06                	je     0x44a731
44a72b:	8b 47 18             	mov    0x18(%edi),%eax
44a72e:	89 43 18             	mov    %eax,0x18(%ebx)
44a731:	09 4b 08             	or     %ecx,0x8(%ebx)
44a734:	5f                   	pop    %edi
44a735:	5b                   	pop    %ebx
44a736:	8b e5                	mov    %ebp,%esp
44a738:	5d                   	pop    %ebp
44a739:	c2 04 00             	ret    $0x4
44a73c:	53                   	push   %ebx
44a73d:	57                   	push   %edi
44a73e:	e8 cd ff 01 00       	call   0x46a710
44a743:	83 c4 08             	add    $0x8,%esp
44a746:	5f                   	pop    %edi
44a747:	5b                   	pop    %ebx
44a748:	8b e5                	mov    %ebp,%esp
44a74a:	5d                   	pop    %ebp
44a74b:	c2 04 00             	ret    $0x4
44a74e:	cc                   	int3
44a74f:	cc                   	int3
44a750:	f6 41 08 07          	testb  $0x7,0x8(%ecx)
44a754:	74 0b                	je     0x44a761
44a756:	33 c0                	xor    %eax,%eax
44a758:	89 41 10             	mov    %eax,0x10(%ecx)
44a75b:	89 41 14             	mov    %eax,0x14(%ecx)
44a75e:	89 41 18             	mov    %eax,0x18(%ecx)
44a761:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)
44a768:	83 c1 04             	add    $0x4,%ecx
44a76b:	f6 01 01             	testb  $0x1,(%ecx)
44a76e:	0f 85 3c 5f 00 00    	jne    0x4506b0
44a774:	c3                   	ret
44a775:	cc                   	int3
44a776:	cc                   	int3
44a777:	cc                   	int3
44a778:	cc                   	int3
44a779:	cc                   	int3
44a77a:	cc                   	int3
44a77b:	cc                   	int3
44a77c:	cc                   	int3
44a77d:	cc                   	int3
44a77e:	cc                   	int3
44a77f:	cc                   	int3
44a780:	53                   	push   %ebx
44a781:	8b 59 08             	mov    0x8(%ecx),%ebx
44a784:	33 d2                	xor    %edx,%edx
44a786:	f6 c3 07             	test   $0x7,%bl
44a789:	74 5a                	je     0x44a7e5
44a78b:	f6 c3 01             	test   $0x1,%bl
44a78e:	74 16                	je     0x44a7a6
44a790:	8b 41 10             	mov    0x10(%ecx),%eax
44a793:	83 c8 01             	or     $0x1,%eax
44a796:	0f bd c0             	bsr    %eax,%eax
44a799:	8d 14 c5 49 00 00 00 	lea    0x49(,%eax,8),%edx
44a7a0:	03 d0                	add    %eax,%edx
44a7a2:	c1 ea 06             	shr    $0x6,%edx
44a7a5:	42                   	inc    %edx
44a7a6:	f6 c3 02             	test   $0x2,%bl
44a7a9:	74 15                	je     0x44a7c0
44a7ab:	8b 41 14             	mov    0x14(%ecx),%eax
44a7ae:	83 c8 01             	or     $0x1,%eax
44a7b1:	0f bd c0             	bsr    %eax,%eax
44a7b4:	8d 04 c0             	lea    (%eax,%eax,8),%eax
44a7b7:	83 c0 49             	add    $0x49,%eax
44a7ba:	c1 e8 06             	shr    $0x6,%eax
44a7bd:	40                   	inc    %eax
44a7be:	03 d0                	add    %eax,%edx
44a7c0:	f6 c3 04             	test   $0x4,%bl
44a7c3:	74 20                	je     0x44a7e5
44a7c5:	8b 41 18             	mov    0x18(%ecx),%eax
44a7c8:	85 c0                	test   %eax,%eax
44a7ca:	79 07                	jns    0x44a7d3
44a7cc:	b8 0a 00 00 00       	mov    $0xa,%eax
44a7d1:	eb 0f                	jmp    0x44a7e2
44a7d3:	83 c8 01             	or     $0x1,%eax
44a7d6:	0f bd c0             	bsr    %eax,%eax
44a7d9:	8d 04 c0             	lea    (%eax,%eax,8),%eax
44a7dc:	83 c0 49             	add    $0x49,%eax
44a7df:	c1 e8 06             	shr    $0x6,%eax
44a7e2:	42                   	inc    %edx
44a7e3:	03 d0                	add    %eax,%edx
44a7e5:	8d 41 04             	lea    0x4(%ecx),%eax
44a7e8:	83 c1 0c             	add    $0xc,%ecx
44a7eb:	f6 00 01             	testb  $0x1,(%eax)
44a7ee:	5b                   	pop    %ebx
44a7ef:	74 0c                	je     0x44a7fd
44a7f1:	51                   	push   %ecx
44a7f2:	52                   	push   %edx
44a7f3:	50                   	push   %eax
44a7f4:	e8 b7 4c 02 00       	call   0x46f4b0
44a7f9:	83 c4 0c             	add    $0xc,%esp
44a7fc:	c3                   	ret
44a7fd:	89 11                	mov    %edx,(%ecx)
44a7ff:	8b c2                	mov    %edx,%eax
44a801:	c3                   	ret
44a802:	cc                   	int3
44a803:	cc                   	int3
44a804:	cc                   	int3
44a805:	cc                   	int3
44a806:	cc                   	int3
44a807:	cc                   	int3
44a808:	cc                   	int3
44a809:	cc                   	int3
44a80a:	cc                   	int3
44a80b:	cc                   	int3
44a80c:	cc                   	int3
44a80d:	cc                   	int3
44a80e:	cc                   	int3
44a80f:	cc                   	int3
44a810:	55                   	push   %ebp
44a811:	8b ec                	mov    %esp,%ebp
44a813:	83 ec 2c             	sub    $0x2c,%esp
44a816:	53                   	push   %ebx
44a817:	56                   	push   %esi
44a818:	57                   	push   %edi
44a819:	8b 7d 08             	mov    0x8(%ebp),%edi
44a81c:	33 f6                	xor    %esi,%esi
44a81e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
44a821:	8b 4d 0c             	mov    0xc(%ebp),%ecx
44a824:	3b 39                	cmp    (%ecx),%edi
44a826:	72 28                	jb     0x44a850
44a828:	8b c7                	mov    %edi,%eax
44a82a:	2b 41 04             	sub    0x4(%ecx),%eax
44a82d:	3b 41 10             	cmp    0x10(%ecx),%eax
44a830:	0f 84 a3 01 00 00    	je     0x44a9d9
44a836:	ff 71 48             	push   0x48(%ecx)
44a839:	50                   	push   %eax
44a83a:	8d 45 f4             	lea    -0xc(%ebp),%eax
44a83d:	50                   	push   %eax
44a83e:	e8 ed 46 01 00       	call   0x45ef30
44a843:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
44a847:	8b 7d f4             	mov    -0xc(%ebp),%edi
44a84a:	0f 85 8b 00 00 00    	jne    0x44a8db
44a850:	0f b6 1f             	movzbl (%edi),%ebx
44a853:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
44a859:	73 03                	jae    0x44a85e
44a85b:	47                   	inc    %edi
44a85c:	eb 2f                	jmp    0x44a88d
44a85e:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
44a862:	83 c3 80             	add    $0xffffff80,%ebx
44a865:	8b c1                	mov    %ecx,%eax
44a867:	c1 e0 07             	shl    $0x7,%eax
44a86a:	03 d8                	add    %eax,%ebx
44a86c:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
44a872:	73 05                	jae    0x44a879
44a874:	83 c7 02             	add    $0x2,%edi
44a877:	eb 14                	jmp    0x44a88d
44a879:	53                   	push   %ebx
44a87a:	8d 45 ec             	lea    -0x14(%ebp),%eax
44a87d:	57                   	push   %edi
44a87e:	50                   	push   %eax
44a87f:	e8 5c 51 01 00       	call   0x45f9e0
44a884:	8b 5d f0             	mov    -0x10(%ebp),%ebx
44a887:	83 c4 0c             	add    $0xc,%esp
44a88a:	8b 7d ec             	mov    -0x14(%ebp),%edi
44a88d:	85 ff                	test   %edi,%edi
44a88f:	74 48                	je     0x44a8d9
44a891:	8b c3                	mov    %ebx,%eax
44a893:	c1 e8 03             	shr    $0x3,%eax
44a896:	83 e8 01             	sub    $0x1,%eax
44a899:	0f 84 a2 00 00 00    	je     0x44a941
44a89f:	83 e8 01             	sub    $0x1,%eax
44a8a2:	74 48                	je     0x44a8ec
44a8a4:	83 e8 01             	sub    $0x1,%eax
44a8a7:	0f 85 ee 00 00 00    	jne    0x44a99b
44a8ad:	80 fb 18             	cmp    $0x18,%bl
44a8b0:	0f 85 e5 00 00 00    	jne    0x44a99b
44a8b6:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44a8b9:	83 ce 04             	or     $0x4,%esi
44a8bc:	50                   	push   %eax
44a8bd:	57                   	push   %edi
44a8be:	e8 bd 62 00 00       	call   0x450b80
44a8c3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44a8c6:	8b f8                	mov    %eax,%edi
44a8c8:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44a8cb:	83 c4 08             	add    $0x8,%esp
44a8ce:	89 41 18             	mov    %eax,0x18(%ecx)
44a8d1:	85 ff                	test   %edi,%edi
44a8d3:	0f 85 48 ff ff ff    	jne    0x44a821
44a8d9:	33 ff                	xor    %edi,%edi
44a8db:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a8de:	09 70 08             	or     %esi,0x8(%eax)
44a8e1:	8b c7                	mov    %edi,%eax
44a8e3:	5f                   	pop    %edi
44a8e4:	5e                   	pop    %esi
44a8e5:	5b                   	pop    %ebx
44a8e6:	8b e5                	mov    %ebp,%esp
44a8e8:	5d                   	pop    %ebp
44a8e9:	c2 08 00             	ret    $0x8
44a8ec:	80 fb 10             	cmp    $0x10,%bl
44a8ef:	0f 85 a6 00 00 00    	jne    0x44a99b
44a8f5:	0f b6 17             	movzbl (%edi),%edx
44a8f8:	83 ce 02             	or     $0x2,%esi
44a8fb:	84 d2                	test   %dl,%dl
44a8fd:	78 09                	js     0x44a908
44a8ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a902:	47                   	inc    %edi
44a903:	89 50 14             	mov    %edx,0x14(%eax)
44a906:	eb c9                	jmp    0x44a8d1
44a908:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
44a90c:	83 c2 80             	add    $0xffffff80,%edx
44a90f:	8b c1                	mov    %ecx,%eax
44a911:	c1 e0 07             	shl    $0x7,%eax
44a914:	03 d0                	add    %eax,%edx
44a916:	84 c9                	test   %cl,%cl
44a918:	78 0b                	js     0x44a925
44a91a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a91d:	83 c7 02             	add    $0x2,%edi
44a920:	89 50 14             	mov    %edx,0x14(%eax)
44a923:	eb ac                	jmp    0x44a8d1
44a925:	52                   	push   %edx
44a926:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44a929:	57                   	push   %edi
44a92a:	50                   	push   %eax
44a92b:	e8 30 51 01 00       	call   0x45fa60
44a930:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a933:	83 c4 0c             	add    $0xc,%esp
44a936:	8b 55 e8             	mov    -0x18(%ebp),%edx
44a939:	8b 7d e4             	mov    -0x1c(%ebp),%edi
44a93c:	89 50 14             	mov    %edx,0x14(%eax)
44a93f:	eb 90                	jmp    0x44a8d1
44a941:	80 fb 08             	cmp    $0x8,%bl
44a944:	75 55                	jne    0x44a99b
44a946:	0f b6 17             	movzbl (%edi),%edx
44a949:	83 ce 01             	or     $0x1,%esi
44a94c:	84 d2                	test   %dl,%dl
44a94e:	78 0c                	js     0x44a95c
44a950:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a953:	47                   	inc    %edi
44a954:	89 50 10             	mov    %edx,0x10(%eax)
44a957:	e9 75 ff ff ff       	jmp    0x44a8d1
44a95c:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
44a960:	83 c2 80             	add    $0xffffff80,%edx
44a963:	8b c1                	mov    %ecx,%eax
44a965:	c1 e0 07             	shl    $0x7,%eax
44a968:	03 d0                	add    %eax,%edx
44a96a:	84 c9                	test   %cl,%cl
44a96c:	78 0e                	js     0x44a97c
44a96e:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a971:	83 c7 02             	add    $0x2,%edi
44a974:	89 50 10             	mov    %edx,0x10(%eax)
44a977:	e9 55 ff ff ff       	jmp    0x44a8d1
44a97c:	52                   	push   %edx
44a97d:	8d 45 dc             	lea    -0x24(%ebp),%eax
44a980:	57                   	push   %edi
44a981:	50                   	push   %eax
44a982:	e8 d9 50 01 00       	call   0x45fa60
44a987:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a98a:	83 c4 0c             	add    $0xc,%esp
44a98d:	8b 55 e0             	mov    -0x20(%ebp),%edx
44a990:	8b 7d dc             	mov    -0x24(%ebp),%edi
44a993:	89 50 10             	mov    %edx,0x10(%eax)
44a996:	e9 36 ff ff ff       	jmp    0x44a8d1
44a99b:	8b c3                	mov    %ebx,%eax
44a99d:	24 07                	and    $0x7,%al
44a99f:	3c 04                	cmp    $0x4,%al
44a9a1:	74 5b                	je     0x44a9fe
44a9a3:	85 db                	test   %ebx,%ebx
44a9a5:	74 57                	je     0x44a9fe
44a9a7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44a9aa:	83 c1 04             	add    $0x4,%ecx
44a9ad:	f6 01 01             	testb  $0x1,(%ecx)
44a9b0:	74 0a                	je     0x44a9bc
44a9b2:	8b 01                	mov    (%ecx),%eax
44a9b4:	83 e0 fc             	and    $0xfffffffc,%eax
44a9b7:	83 c0 04             	add    $0x4,%eax
44a9ba:	eb 05                	jmp    0x44a9c1
44a9bc:	e8 6f 62 00 00       	call   0x450c30
44a9c1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
44a9c4:	51                   	push   %ecx
44a9c5:	57                   	push   %edi
44a9c6:	50                   	push   %eax
44a9c7:	6a 00                	push   $0x0
44a9c9:	53                   	push   %ebx
44a9ca:	e8 e1 65 01 00       	call   0x460fb0
44a9cf:	83 c4 14             	add    $0x14,%esp
44a9d2:	8b f8                	mov    %eax,%edi
44a9d4:	e9 f8 fe ff ff       	jmp    0x44a8d1
44a9d9:	85 c0                	test   %eax,%eax
44a9db:	0f 8e fa fe ff ff    	jle    0x44a8db
44a9e1:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
44a9e5:	0f 85 f0 fe ff ff    	jne    0x44a8db
44a9eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
44a9ee:	33 ff                	xor    %edi,%edi
44a9f0:	09 70 08             	or     %esi,0x8(%eax)
44a9f3:	8b c7                	mov    %edi,%eax
44a9f5:	5f                   	pop    %edi
44a9f6:	5e                   	pop    %esi
44a9f7:	5b                   	pop    %ebx
44a9f8:	8b e5                	mov    %ebp,%esp
44a9fa:	5d                   	pop    %ebp
44a9fb:	c2 08 00             	ret    $0x8
44a9fe:	8b 4d 0c             	mov    0xc(%ebp),%ecx
44aa01:	8d 43 ff             	lea    -0x1(%ebx),%eax
44aa04:	89 41 3c             	mov    %eax,0x3c(%ecx)
44aa07:	8b 45 fc             	mov    -0x4(%ebp),%eax
44aa0a:	09 70 08             	or     %esi,0x8(%eax)
44aa0d:	8b c7                	mov    %edi,%eax
44aa0f:	5f                   	pop    %edi
44aa10:	5e                   	pop    %esi
44aa11:	5b                   	pop    %ebx
44aa12:	8b e5                	mov    %ebp,%esp
44aa14:	5d                   	pop    %ebp
44aa15:	c2 08 00             	ret    $0x8
44aa18:	cc                   	int3