4498e0:	55                   	push   %ebp
4498e1:	8b ec                	mov    %esp,%ebp
4498e3:	83 ec 08             	sub    $0x8,%esp
4498e6:	53                   	push   %ebx
4498e7:	57                   	push   %edi
4498e8:	8b 7d 08             	mov    0x8(%ebp),%edi
4498eb:	8b d9                	mov    %ecx,%ebx
4498ed:	85 ff                	test   %edi,%edi
4498ef:	74 71                	je     0x449962
4498f1:	56                   	push   %esi
4498f2:	6a 00                	push   $0x0
4498f4:	68 18 d0 68 00       	push   $0x68d018
4498f9:	e8 82 9a 01 00       	call   0x463380
4498fe:	a1 44 d0 68 00       	mov    0x68d044,%eax
449903:	83 c4 08             	add    $0x8,%esp
449906:	8b 48 10             	mov    0x10(%eax),%ecx
449909:	8b 70 14             	mov    0x14(%eax),%esi
44990c:	8b 07                	mov    (%edi),%eax
44990e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
449911:	8d 4d f8             	lea    -0x8(%ebp),%ecx
449914:	51                   	push   %ecx
449915:	8b cf                	mov    %edi,%ecx
449917:	ff 50 48             	call   *0x48(%eax)
44991a:	3b 70 04             	cmp    0x4(%eax),%esi
44991d:	5e                   	pop    %esi
44991e:	75 42                	jne    0x449962
449920:	f6 47 04 01          	testb  $0x1,0x4(%edi)
449924:	8d 4b 04             	lea    0x4(%ebx),%ecx
449927:	74 0f                	je     0x449938
449929:	8b 47 04             	mov    0x4(%edi),%eax
44992c:	83 e0 fc             	and    $0xfffffffc,%eax
44992f:	83 c0 04             	add    $0x4,%eax
449932:	50                   	push   %eax
449933:	e8 a8 6d 00 00       	call   0x4506e0
449938:	f6 47 08 01          	testb  $0x1,0x8(%edi)
44993c:	74 2e                	je     0x44996c
44993e:	8b cb                	mov    %ebx,%ecx
449940:	e8 4b 88 00 00       	call   0x452190
449945:	8b 4f 10             	mov    0x10(%edi),%ecx
449948:	ba 50 d0 68 00       	mov    $0x68d050,%edx
44994d:	85 c9                	test   %ecx,%ecx
44994f:	0f 45 d1             	cmovne %ecx,%edx
449952:	8b c8                	mov    %eax,%ecx
449954:	52                   	push   %edx
449955:	e8 66 75 00 00       	call   0x450ec0
44995a:	5f                   	pop    %edi
44995b:	5b                   	pop    %ebx
44995c:	8b e5                	mov    %ebp,%esp
44995e:	5d                   	pop    %ebp
44995f:	c2 04 00             	ret    $0x4
449962:	53                   	push   %ebx
449963:	57                   	push   %edi
449964:	e8 a7 0d 02 00       	call   0x46a710
449969:	83 c4 08             	add    $0x8,%esp
44996c:	5f                   	pop    %edi
44996d:	5b                   	pop    %ebx
44996e:	8b e5                	mov    %ebp,%esp
449970:	5d                   	pop    %ebp
449971:	c2 04 00             	ret    $0x4
449974:	cc                   	int3
449975:	cc                   	int3
449976:	cc                   	int3
449977:	cc                   	int3
449978:	cc                   	int3
449979:	cc                   	int3
44997a:	cc                   	int3
44997b:	cc                   	int3
44997c:	cc                   	int3
44997d:	cc                   	int3
44997e:	cc                   	int3
44997f:	cc                   	int3
449980:	55                   	push   %ebp
449981:	8b ec                	mov    %esp,%ebp
449983:	51                   	push   %ecx
449984:	56                   	push   %esi
449985:	8b f1                	mov    %ecx,%esi
449987:	f6 46 08 01          	testb  $0x1,0x8(%esi)
44998b:	74 08                	je     0x449995
44998d:	8b 4e 10             	mov    0x10(%esi),%ecx
449990:	e8 eb e7 ff ff       	call   0x448180
449995:	8d 4e 04             	lea    0x4(%esi),%ecx
449998:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
44999f:	f6 01 01             	testb  $0x1,(%ecx)
4499a2:	5e                   	pop    %esi
4499a3:	74 05                	je     0x4499aa
4499a5:	e8 06 6d 00 00       	call   0x4506b0
4499aa:	8b e5                	mov    %ebp,%esp
4499ac:	5d                   	pop    %ebp
4499ad:	c3                   	ret
4499ae:	cc                   	int3
4499af:	cc                   	int3
4499b0:	56                   	push   %esi
4499b1:	8b f1                	mov    %ecx,%esi
4499b3:	33 c0                	xor    %eax,%eax
4499b5:	f6 46 08 01          	testb  $0x1,0x8(%esi)
4499b9:	74 1c                	je     0x4499d7
4499bb:	8b 4e 10             	mov    0x10(%esi),%ecx
4499be:	e8 ad e8 ff ff       	call   0x448270
4499c3:	8b d0                	mov    %eax,%edx
4499c5:	83 c8 01             	or     $0x1,%eax
4499c8:	0f bd c0             	bsr    %eax,%eax
4499cb:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4499ce:	83 c0 49             	add    $0x49,%eax
4499d1:	c1 e8 06             	shr    $0x6,%eax
4499d4:	40                   	inc    %eax
4499d5:	03 c2                	add    %edx,%eax
4499d7:	8d 4e 04             	lea    0x4(%esi),%ecx
4499da:	83 c6 0c             	add    $0xc,%esi
4499dd:	f6 01 01             	testb  $0x1,(%ecx)
4499e0:	74 0d                	je     0x4499ef
4499e2:	56                   	push   %esi
4499e3:	50                   	push   %eax
4499e4:	51                   	push   %ecx
4499e5:	e8 c6 5a 02 00       	call   0x46f4b0
4499ea:	83 c4 0c             	add    $0xc,%esp
4499ed:	5e                   	pop    %esi
4499ee:	c3                   	ret
4499ef:	89 06                	mov    %eax,(%esi)
4499f1:	5e                   	pop    %esi
4499f2:	c3                   	ret
4499f3:	cc                   	int3
4499f4:	cc                   	int3
4499f5:	cc                   	int3
4499f6:	cc                   	int3
4499f7:	cc                   	int3
4499f8:	cc                   	int3
4499f9:	cc                   	int3
4499fa:	cc                   	int3
4499fb:	cc                   	int3
4499fc:	cc                   	int3
4499fd:	cc                   	int3
4499fe:	cc                   	int3
4499ff:	cc                   	int3
449a00:	55                   	push   %ebp
449a01:	8b ec                	mov    %esp,%ebp
449a03:	83 ec 14             	sub    $0x14,%esp
449a06:	53                   	push   %ebx
449a07:	56                   	push   %esi
449a08:	8b 75 08             	mov    0x8(%ebp),%esi
449a0b:	57                   	push   %edi
449a0c:	8b 7d 0c             	mov    0xc(%ebp),%edi
449a0f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
449a12:	3b 37                	cmp    (%edi),%esi
449a14:	72 2a                	jb     0x449a40
449a16:	8b c6                	mov    %esi,%eax
449a18:	2b 47 04             	sub    0x4(%edi),%eax
449a1b:	3b 47 10             	cmp    0x10(%edi),%eax
449a1e:	0f 84 03 01 00 00    	je     0x449b27
449a24:	ff 77 48             	push   0x48(%edi)
449a27:	8b cf                	mov    %edi,%ecx
449a29:	50                   	push   %eax
449a2a:	8d 45 f4             	lea    -0xc(%ebp),%eax
449a2d:	50                   	push   %eax
449a2e:	e8 fd 54 01 00       	call   0x45ef30
449a33:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
449a37:	8b 75 f4             	mov    -0xc(%ebp),%esi
449a3a:	0f 85 9d 00 00 00    	jne    0x449add
449a40:	0f b6 1e             	movzbl (%esi),%ebx
449a43:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
449a49:	73 03                	jae    0x449a4e
449a4b:	46                   	inc    %esi
449a4c:	eb 2f                	jmp    0x449a7d
449a4e:	0f b6 4e 01          	movzbl 0x1(%esi),%ecx
449a52:	83 c3 80             	add    $0xffffff80,%ebx
449a55:	8b c1                	mov    %ecx,%eax
449a57:	c1 e0 07             	shl    $0x7,%eax
449a5a:	03 d8                	add    %eax,%ebx
449a5c:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
449a62:	73 05                	jae    0x449a69
449a64:	83 c6 02             	add    $0x2,%esi
449a67:	eb 14                	jmp    0x449a7d
449a69:	53                   	push   %ebx
449a6a:	8d 45 ec             	lea    -0x14(%ebp),%eax
449a6d:	56                   	push   %esi
449a6e:	50                   	push   %eax
449a6f:	e8 6c 5f 01 00       	call   0x45f9e0
449a74:	8b 5d f0             	mov    -0x10(%ebp),%ebx
449a77:	83 c4 0c             	add    $0xc,%esp
449a7a:	8b 75 ec             	mov    -0x14(%ebp),%esi
449a7d:	85 f6                	test   %esi,%esi
449a7f:	74 5a                	je     0x449adb
449a81:	8b c3                	mov    %ebx,%eax
449a83:	c1 e8 03             	shr    $0x3,%eax
449a86:	83 e8 01             	sub    $0x1,%eax
449a89:	75 5d                	jne    0x449ae8
449a8b:	80 fb 0a             	cmp    $0xa,%bl
449a8e:	75 58                	jne    0x449ae8
449a90:	8b 5d fc             	mov    -0x4(%ebp),%ebx
449a93:	83 4b 08 01          	orl    $0x1,0x8(%ebx)
449a97:	8b 43 10             	mov    0x10(%ebx),%eax
449a9a:	85 c0                	test   %eax,%eax
449a9c:	75 2a                	jne    0x449ac8
449a9e:	8b 4b 04             	mov    0x4(%ebx),%ecx
449aa1:	f6 c1 03             	test   $0x3,%cl
449aa4:	75 05                	jne    0x449aab
449aa6:	83 e1 fc             	and    $0xfffffffc,%ecx
449aa9:	eb 11                	jmp    0x449abc
449aab:	8b c1                	mov    %ecx,%eax
449aad:	d1 e8                	shr    $1,%eax
449aaf:	a8 01                	test   $0x1,%al
449ab1:	74 04                	je     0x449ab7
449ab3:	33 c9                	xor    %ecx,%ecx
449ab5:	eb 05                	jmp    0x449abc
449ab7:	83 e1 fc             	and    $0xfffffffc,%ecx
449aba:	8b 09                	mov    (%ecx),%ecx
449abc:	51                   	push   %ecx
449abd:	e8 ce 61 00 00       	call   0x44fc90
449ac2:	83 c4 04             	add    $0x4,%esp
449ac5:	89 43 10             	mov    %eax,0x10(%ebx)
449ac8:	56                   	push   %esi
449ac9:	50                   	push   %eax
449aca:	8b cf                	mov    %edi,%ecx
449acc:	e8 1f 6e 00 00       	call   0x4508f0
449ad1:	8b f0                	mov    %eax,%esi
449ad3:	85 f6                	test   %esi,%esi
449ad5:	0f 85 37 ff ff ff    	jne    0x449a12
449adb:	33 f6                	xor    %esi,%esi
449add:	5f                   	pop    %edi
449ade:	8b c6                	mov    %esi,%eax
449ae0:	5e                   	pop    %esi
449ae1:	5b                   	pop    %ebx
449ae2:	8b e5                	mov    %ebp,%esp
449ae4:	5d                   	pop    %ebp
449ae5:	c2 08 00             	ret    $0x8
449ae8:	8b c3                	mov    %ebx,%eax
449aea:	24 07                	and    $0x7,%al
449aec:	3c 04                	cmp    $0x4,%al
449aee:	74 4e                	je     0x449b3e
449af0:	85 db                	test   %ebx,%ebx
449af2:	74 4a                	je     0x449b3e
449af4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
449af7:	83 c1 04             	add    $0x4,%ecx
449afa:	f6 01 01             	testb  $0x1,(%ecx)
449afd:	74 0a                	je     0x449b09
449aff:	8b 01                	mov    (%ecx),%eax
449b01:	83 e0 fc             	and    $0xfffffffc,%eax
449b04:	83 c0 04             	add    $0x4,%eax
449b07:	eb 05                	jmp    0x449b0e
449b09:	e8 22 71 00 00       	call   0x450c30
449b0e:	57                   	push   %edi
449b0f:	56                   	push   %esi
449b10:	50                   	push   %eax
449b11:	6a 00                	push   $0x0
449b13:	53                   	push   %ebx
449b14:	e8 97 74 01 00       	call   0x460fb0
449b19:	8b f0                	mov    %eax,%esi
449b1b:	83 c4 14             	add    $0x14,%esp
449b1e:	85 f6                	test   %esi,%esi
449b20:	74 b9                	je     0x449adb
449b22:	e9 eb fe ff ff       	jmp    0x449a12
449b27:	85 c0                	test   %eax,%eax
449b29:	7e b2                	jle    0x449add
449b2b:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
449b2f:	75 ac                	jne    0x449add
449b31:	33 f6                	xor    %esi,%esi
449b33:	5f                   	pop    %edi
449b34:	8b c6                	mov    %esi,%eax
449b36:	5e                   	pop    %esi
449b37:	5b                   	pop    %ebx
449b38:	8b e5                	mov    %ebp,%esp
449b3a:	5d                   	pop    %ebp
449b3b:	c2 08 00             	ret    $0x8
449b3e:	8d 43 ff             	lea    -0x1(%ebx),%eax
449b41:	89 47 3c             	mov    %eax,0x3c(%edi)
449b44:	8b c6                	mov    %esi,%eax
449b46:	5f                   	pop    %edi
449b47:	5e                   	pop    %esi
449b48:	5b                   	pop    %ebx
449b49:	8b e5                	mov    %ebp,%esp
449b4b:	5d                   	pop    %ebp
449b4c:	c2 08 00             	ret    $0x8
449b4f:	cc                   	int3
449b50:	55                   	push   %ebp
449b51:	8b ec                	mov    %esp,%ebp
449b53:	53                   	push   %ebx
449b54:	8b 5d 0c             	mov    0xc(%ebp),%ebx
449b57:	57                   	push   %edi
449b58:	8b f9                	mov    %ecx,%edi
449b5a:	f6 47 08 01          	testb  $0x1,0x8(%edi)
449b5e:	74 36                	je     0x449b96
449b60:	8b 45 08             	mov    0x8(%ebp),%eax
449b63:	3b 03                	cmp    (%ebx),%eax
449b65:	72 08                	jb     0x449b6f
449b67:	50                   	push   %eax
449b68:	8b cb                	mov    %ebx,%ecx
449b6a:	e8 01 fa 00 00       	call   0x459570
449b6f:	56                   	push   %esi
449b70:	8b 77 10             	mov    0x10(%edi),%esi
449b73:	50                   	push   %eax
449b74:	6a 0a                	push   $0xa
449b76:	e8 45 6f 00 00       	call   0x450ac0
449b7b:	8b 56 0c             	mov    0xc(%esi),%edx
449b7e:	50                   	push   %eax
449b7f:	52                   	push   %edx
449b80:	e8 3b 6f 00 00       	call   0x450ac0
449b85:	83 c4 10             	add    $0x10,%esp
449b88:	8b ce                	mov    %esi,%ecx
449b8a:	53                   	push   %ebx
449b8b:	50                   	push   %eax
449b8c:	e8 af f1 ff ff       	call   0x448d40
449b91:	8b c8                	mov    %eax,%ecx
449b93:	5e                   	pop    %esi
449b94:	eb 03                	jmp    0x449b99
449b96:	8b 4d 08             	mov    0x8(%ebp),%ecx
449b99:	f6 47 04 01          	testb  $0x1,0x4(%edi)
449b9d:	74 1a                	je     0x449bb9
449b9f:	8b 47 04             	mov    0x4(%edi),%eax
449ba2:	83 e0 fc             	and    $0xfffffffc,%eax
449ba5:	53                   	push   %ebx
449ba6:	83 c0 04             	add    $0x4,%eax
449ba9:	51                   	push   %ecx
449baa:	50                   	push   %eax
449bab:	e8 90 89 02 00       	call   0x472540
449bb0:	83 c4 0c             	add    $0xc,%esp
449bb3:	5f                   	pop    %edi
449bb4:	5b                   	pop    %ebx
449bb5:	5d                   	pop    %ebp
449bb6:	c2 08 00             	ret    $0x8
449bb9:	5f                   	pop    %edi
449bba:	8b c1                	mov    %ecx,%eax
449bbc:	5b                   	pop    %ebx
449bbd:	5d                   	pop    %ebp
449bbe:	c2 08 00             	ret    $0x8
449bc1:	cc                   	int3
449bc2:	cc                   	int3
449bc3:	cc                   	int3
449bc4:	cc                   	int3
449bc5:	cc                   	int3
449bc6:	cc                   	int3
449bc7:	cc                   	int3
449bc8:	cc                   	int3
449bc9:	cc                   	int3
449bca:	cc                   	int3
449bcb:	cc                   	int3
449bcc:	cc                   	int3
449bcd:	cc                   	int3
449bce:	cc                   	int3
449bcf:	cc                   	int3
449bd0:	55                   	push   %ebp
449bd1:	8b ec                	mov    %esp,%ebp
449bd3:	6a 00                	push   $0x0
449bd5:	68 18 d0 68 00       	push   $0x68d018
449bda:	e8 a1 97 01 00       	call   0x463380
449bdf:	a1 44 d0 68 00       	mov    0x68d044,%eax
449be4:	83 c4 08             	add    $0x8,%esp
449be7:	8b 48 10             	mov    0x10(%eax),%ecx
449bea:	8b 50 14             	mov    0x14(%eax),%edx
449bed:	8b 45 08             	mov    0x8(%ebp),%eax
449bf0:	89 08                	mov    %ecx,(%eax)
449bf2:	89 50 04             	mov    %edx,0x4(%eax)