44682a:	3b 3c 24             	cmp    (%esp),%edi
44682d:	0f 84 77 01 00 00    	je     0x4469aa
446833:	f6 46 1c 01          	testb  $0x1,0x1c(%esi)
446837:	74 08                	je     0x446841
446839:	8a 9e 98 00 00 00    	mov    0x98(%esi),%bl
44683f:	eb 06                	jmp    0x446847
446841:	8a 1d c0 69 44 00    	mov    0x4469c0,%bl
446847:	f6 c3 01             	test   $0x1,%bl
44684a:	74 12                	je     0x44685e
44684c:	8b 04 24             	mov    (%esp),%eax
44684f:	50                   	push   %eax
446850:	57                   	push   %edi
446851:	8b 46 40             	mov    0x40(%esi),%eax
446854:	50                   	push   %eax
446855:	e8 d2 fb fb ff       	call   0x40642c
44685a:	8b e8                	mov    %eax,%ebp
44685c:	eb 03                	jmp    0x446861
44685e:	8b 6e 40             	mov    0x40(%esi),%ebp
446861:	f6 c3 02             	test   $0x2,%bl
446864:	74 14                	je     0x44687a
446866:	8b 04 24             	mov    (%esp),%eax
446869:	50                   	push   %eax
44686a:	57                   	push   %edi
44686b:	8b 46 44             	mov    0x44(%esi),%eax
44686e:	50                   	push   %eax
44686f:	e8 b8 fb fb ff       	call   0x40642c
446874:	89 44 24 04          	mov    %eax,0x4(%esp)
446878:	eb 07                	jmp    0x446881
44687a:	8b 46 44             	mov    0x44(%esi),%eax
44687d:	89 44 24 04          	mov    %eax,0x4(%esp)
446881:	f6 c3 04             	test   $0x4,%bl
446884:	74 38                	je     0x4468be
446886:	f6 46 51 01          	testb  $0x1,0x51(%esi)
44688a:	75 32                	jne    0x4468be
44688c:	f6 c3 01             	test   $0x1,%bl
44688f:	74 19                	je     0x4468aa
446891:	8b 04 24             	mov    (%esp),%eax
446894:	50                   	push   %eax
446895:	57                   	push   %edi
446896:	8b 46 40             	mov    0x40(%esi),%eax
446899:	03 46 48             	add    0x48(%esi),%eax
44689c:	50                   	push   %eax
44689d:	e8 8a fb fb ff       	call   0x40642c
4468a2:	2b c5                	sub    %ebp,%eax
4468a4:	89 44 24 08          	mov    %eax,0x8(%esp)
4468a8:	eb 1b                	jmp    0x4468c5
4468aa:	8b 04 24             	mov    (%esp),%eax
4468ad:	50                   	push   %eax
4468ae:	57                   	push   %edi
4468af:	8b 46 48             	mov    0x48(%esi),%eax
4468b2:	50                   	push   %eax
4468b3:	e8 74 fb fb ff       	call   0x40642c
4468b8:	89 44 24 08          	mov    %eax,0x8(%esp)
4468bc:	eb 07                	jmp    0x4468c5
4468be:	8b 46 48             	mov    0x48(%esi),%eax
4468c1:	89 44 24 08          	mov    %eax,0x8(%esp)
4468c5:	f6 c3 08             	test   $0x8,%bl
4468c8:	0f 95 c0             	setne  %al
4468cb:	84 c0                	test   %al,%al
4468cd:	74 3f                	je     0x44690e
4468cf:	f6 46 51 02          	testb  $0x2,0x51(%esi)
4468d3:	75 39                	jne    0x44690e
4468d5:	f6 c3 08             	test   $0x8,%bl
4468d8:	0f 95 c2             	setne  %dl
4468db:	84 c0                	test   %al,%al
4468dd:	74 1b                	je     0x4468fa
4468df:	8b 04 24             	mov    (%esp),%eax
4468e2:	50                   	push   %eax
4468e3:	57                   	push   %edi
4468e4:	8b 46 44             	mov    0x44(%esi),%eax
4468e7:	03 46 4c             	add    0x4c(%esi),%eax
4468ea:	50                   	push   %eax
4468eb:	e8 3c fb fb ff       	call   0x40642c
4468f0:	2b 44 24 04          	sub    0x4(%esp),%eax
4468f4:	89 44 24 0c          	mov    %eax,0xc(%esp)
4468f8:	eb 1b                	jmp    0x446915
4468fa:	8b 04 24             	mov    (%esp),%eax
4468fd:	50                   	push   %eax
4468fe:	57                   	push   %edi
4468ff:	8b 46 44             	mov    0x44(%esi),%eax
446902:	50                   	push   %eax
446903:	e8 24 fb fb ff       	call   0x40642c
446908:	89 44 24 0c          	mov    %eax,0xc(%esp)
44690c:	eb 07                	jmp    0x446915
44690e:	8b 46 4c             	mov    0x4c(%esi),%eax
446911:	89 44 24 0c          	mov    %eax,0xc(%esp)
446915:	8b 44 24 08          	mov    0x8(%esp),%eax
446919:	50                   	push   %eax
44691a:	8b 44 24 10          	mov    0x10(%esp),%eax
44691e:	50                   	push   %eax
44691f:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
446923:	8b d5                	mov    %ebp,%edx
446925:	8b c6                	mov    %esi,%eax
446927:	8b 28                	mov    (%eax),%ebp
446929:	ff 95 84 00 00 00    	call   *0x84(%ebp)
44692f:	8b c3                	mov    %ebx,%eax
446931:	22 05 c4 69 44 00    	and    0x4469c4,%al
446937:	8a 15 c8 69 44 00    	mov    0x4469c8,%dl
44693d:	3a d0                	cmp    %al,%dl
44693f:	74 17                	je     0x446958
446941:	8b 04 24             	mov    (%esp),%eax
446944:	50                   	push   %eax
446945:	57                   	push   %edi
446946:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
44694c:	50                   	push   %eax
44694d:	e8 da fa fb ff       	call   0x40642c
446952:	89 86 90 00 00 00    	mov    %eax,0x90(%esi)
446958:	8b c3                	mov    %ebx,%eax
44695a:	22 05 cc 69 44 00    	and    0x4469cc,%al
446960:	8a 15 c8 69 44 00    	mov    0x4469c8,%dl
446966:	3a d0                	cmp    %al,%dl
446968:	74 17                	je     0x446981
44696a:	8b 04 24             	mov    (%esp),%eax
44696d:	50                   	push   %eax
44696e:	57                   	push   %edi
44696f:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
446975:	50                   	push   %eax
446976:	e8 b1 fa fb ff       	call   0x40642c
44697b:	89 86 94 00 00 00    	mov    %eax,0x94(%esi)
446981:	80 7e 59 00          	cmpb   $0x0,0x59(%esi)
446985:	75 23                	jne    0x4469aa
446987:	f6 c3 10             	test   $0x10,%bl
44698a:	74 1e                	je     0x4469aa
44698c:	8b 04 24             	mov    (%esp),%eax
44698f:	50                   	push   %eax
446990:	57                   	push   %edi
446991:	8b 5e 68             	mov    0x68(%esi),%ebx
446994:	8b c3                	mov    %ebx,%eax
446996:	e8 2d d7 fd ff       	call   0x4240c8
44699b:	50                   	push   %eax
44699c:	e8 8b fa fb ff       	call   0x40642c
4469a1:	8b d0                	mov    %eax,%edx
4469a3:	8b c3                	mov    %ebx,%eax
4469a5:	e8 3a d7 fd ff       	call   0x4240e4
4469aa:	a0 c8 69 44 00       	mov    0x4469c8,%al
4469af:	88 86 98 00 00 00    	mov    %al,0x98(%esi)
4469b5:	83 c4 10             	add    $0x10,%esp
4469b8:	5d                   	pop    %ebp
4469b9:	5f                   	pop    %edi
4469ba:	5e                   	pop    %esi
4469bb:	5b                   	pop    %ebx
4469bc:	c3                   	ret
4469bd:	00 00                	add    %al,(%eax)
4469bf:	00 1f                	add    %bl,(%edi)
4469c1:	00 00                	add    %al,(%eax)
4469c3:	00 05 00 00 00 00    	add    %al,0x0
4469c9:	00 00                	add    %al,(%eax)
4469cb:	00 0a                	add    %cl,(%edx)
4469cd:	00 00                	add    %al,(%eax)
4469cf:	00 56 3a             	add    %dl,0x3a(%esi)
4469d2:	50                   	push   %eax
4469d3:	5c                   	pop    %esp
4469d4:	74 10                	je     0x4469e6
4469d6:	88 50 5c             	mov    %dl,0x5c(%eax)
4469d9:	84 d2                	test   %dl,%dl
4469db:	74 09                	je     0x4469e6
4469dd:	66 be ee ff          	mov    $0xffee,%si
4469e1:	e8 d6 ca fb ff       	call   0x4034bc
4469e6:	5e                   	pop    %esi
4469e7:	c3                   	ret
4469e8:	55                   	push   %ebp
4469e9:	8b ec                	mov    %esp,%ebp
4469eb:	83 c4 f8             	add    $0xfffffff8,%esp
4469ee:	53                   	push   %ebx
4469ef:	56                   	push   %esi
4469f0:	57                   	push   %edi
4469f1:	33 c9                	xor    %ecx,%ecx
4469f3:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4469f6:	89 55 fc             	mov    %edx,-0x4(%ebp)
4469f9:	8b f8                	mov    %eax,%edi
4469fb:	33 c0                	xor    %eax,%eax
4469fd:	55                   	push   %ebp
4469fe:	68 7e 6a 44 00       	push   $0x446a7e
446a03:	64 ff 30             	push   %fs:(%eax)
446a06:	64 89 20             	mov    %esp,%fs:(%eax)
446a09:	f6 47 50 20          	testb  $0x20,0x50(%edi)
446a0d:	74 3b                	je     0x446a4a
446a0f:	f6 47 1c 01          	testb  $0x1,0x1c(%edi)
446a13:	75 35                	jne    0x446a4a
446a15:	8d 55 f8             	lea    -0x8(%ebp),%edx
446a18:	8b c7                	mov    %edi,%eax
446a1a:	e8 e1 01 00 00       	call   0x446c00
446a1f:	8b 55 f8             	mov    -0x8(%ebp),%edx
446a22:	8b 47 08             	mov    0x8(%edi),%eax
446a25:	e8 32 da fb ff       	call   0x40445c
446a2a:	75 1e                	jne    0x446a4a
446a2c:	8b 77 04             	mov    0x4(%edi),%esi
446a2f:	85 f6                	test   %esi,%esi
446a31:	74 1b                	je     0x446a4e
446a33:	8b c6                	mov    %esi,%eax
446a35:	8b 15 d4 25 44 00    	mov    0x4425d4,%edx
446a3b:	e8 0c ca fb ff       	call   0x40344c
446a40:	84 c0                	test   %al,%al
446a42:	74 0a                	je     0x446a4e
446a44:	f6 46 1c 01          	testb  $0x1,0x1c(%esi)
446a48:	74 04                	je     0x446a4e
446a4a:	33 db                	xor    %ebx,%ebx
446a4c:	eb 02                	jmp    0x446a50
446a4e:	b3 01                	mov    $0x1,%bl
446a50:	8b 55 fc             	mov    -0x4(%ebp),%edx
446a53:	8b c7                	mov    %edi,%eax
446a55:	e8 66 a5 fd ff       	call   0x420fc0
446a5a:	84 db                	test   %bl,%bl
446a5c:	74 0a                	je     0x446a68
446a5e:	8b 55 fc             	mov    -0x4(%ebp),%edx
446a61:	8b c7                	mov    %edi,%eax
446a63:	e8 c8 01 00 00       	call   0x446c30
446a68:	33 c0                	xor    %eax,%eax
446a6a:	5a                   	pop    %edx
446a6b:	59                   	pop    %ecx
446a6c:	59                   	pop    %ecx
446a6d:	64 89 10             	mov    %edx,%fs:(%eax)
446a70:	68 85 6a 44 00       	push   $0x446a85
446a75:	8d 45 f8             	lea    -0x8(%ebp),%eax
446a78:	e8 d3 d5 fb ff       	call   0x404050
446a7d:	c3                   	ret
446a7e:	e9 d1 cf fb ff       	jmp    0x403a54
446a83:	eb f0                	jmp    0x446a75
446a85:	5f                   	pop    %edi
446a86:	5e                   	pop    %esi
446a87:	5b                   	pop    %ebx
446a88:	59                   	pop    %ecx
446a89:	59                   	pop    %ecx
446a8a:	5d                   	pop    %ebp
446a8b:	c3                   	ret
446a8c:	53                   	push   %ebx
446a8d:	56                   	push   %esi
446a8e:	57                   	push   %edi
446a8f:	83 c4 e8             	add    $0xffffffe8,%esp
446a92:	8b f2                	mov    %edx,%esi
446a94:	8d 3c 24             	lea    (%esp),%edi
446a97:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446a98:	a5                   	movsl  %ds:(%esi),%es:(%edi)
446a99:	8b d8                	mov    %eax,%ebx
446a9b:	8d 54 24 08          	lea    0x8(%esp),%edx
446a9f:	8b c3                	mov    %ebx,%eax
446aa1:	8b 08                	mov    (%eax),%ecx
446aa3:	ff 51 44             	call   *0x44(%ecx)
446aa6:	8b 43 48             	mov    0x48(%ebx),%eax
446aa9:	2b 44 24 10          	sub    0x10(%esp),%eax
446aad:	03 04 24             	add    (%esp),%eax
446ab0:	50                   	push   %eax
446ab1:	8b 43 4c             	mov    0x4c(%ebx),%eax
446ab4:	2b 44 24 18          	sub    0x18(%esp),%eax
446ab8:	03 44 24 08          	add    0x8(%esp),%eax
446abc:	50                   	push   %eax
446abd:	8b 4b 44             	mov    0x44(%ebx),%ecx
446ac0:	8b 53 40             	mov    0x40(%ebx),%edx
446ac3:	8b c3                	mov    %ebx,%eax
446ac5:	8b 18                	mov    (%eax),%ebx
446ac7:	ff 93 84 00 00 00    	call   *0x84(%ebx)
446acd:	83 c4 18             	add    $0x18,%esp
446ad0:	5f                   	pop    %edi
446ad1:	5e                   	pop    %esi
446ad2:	5b                   	pop    %ebx
446ad3:	c3                   	ret
446ad4:	53                   	push   %ebx
446ad5:	56                   	push   %esi
446ad6:	8b f2                	mov    %edx,%esi
446ad8:	8b d8                	mov    %eax,%ebx
446ada:	3b 73 30             	cmp    0x30(%ebx),%esi
446add:	74 3d                	je     0x446b1c
446adf:	3b de                	cmp    %esi,%ebx
446ae1:	75 17                	jne    0x446afa
446ae3:	8b 0d bc 47 47 00    	mov    0x4747bc,%ecx
446ae9:	b2 01                	mov    $0x1,%dl
446aeb:	a1 78 5f 41 00       	mov    0x415f78,%eax
446af0:	e8 bb 50 fc ff       	call   0x40bbb0
446af5:	e8 92 cf fb ff       	call   0x403a8c
446afa:	8b 43 30             	mov    0x30(%ebx),%eax
446afd:	85 c0                	test   %eax,%eax
446aff:	74 07                	je     0x446b08
446b01:	8b d3                	mov    %ebx,%edx
446b03:	e8 4c 35 00 00       	call   0x44a054
446b08:	85 f6                	test   %esi,%esi
446b0a:	74 10                	je     0x446b1c
446b0c:	8b d3                	mov    %ebx,%edx
446b0e:	8b c6                	mov    %esi,%eax
446b10:	e8 6b 34 00 00       	call   0x449f80
446b15:	8b c3                	mov    %ebx,%eax
446b17:	e8 48 f7 ff ff       	call   0x446264
446b1c:	5e                   	pop    %esi
446b1d:	5b                   	pop    %ebx
446b1e:	c3                   	ret
446b1f:	90                   	nop
446b20:	53                   	push   %ebx
446b21:	56                   	push   %esi
446b22:	57                   	push   %edi
446b23:	8b da                	mov    %edx,%ebx
446b25:	8b f8                	mov    %eax,%edi
446b27:	3a 5f 57             	cmp    0x57(%edi),%bl
446b2a:	74 2b                	je     0x446b57
446b2c:	8b c7                	mov    %edi,%eax
446b2e:	66 be cd ff          	mov    $0xffcd,%si
446b32:	e8 85 c9 fb ff       	call   0x4034bc
446b37:	88 5f 57             	mov    %bl,0x57(%edi)
446b3a:	6a 00                	push   $0x0
446b3c:	33 c9                	xor    %ecx,%ecx
446b3e:	8a cb                	mov    %bl,%cl
446b40:	ba 0b b0 00 00       	mov    $0xb00b,%edx
446b45:	8b c7                	mov    %edi,%eax
446b47:	e8 5c 12 00 00       	call   0x447da8
446b4c:	8b c7                	mov    %edi,%eax
446b4e:	66 be d0 ff          	mov    $0xffd0,%si
446b52:	e8 65 c9 fb ff       	call   0x4034bc
446b57:	5f                   	pop    %edi
446b58:	5e                   	pop    %esi
446b59:	5b                   	pop    %ebx
446b5a:	c3                   	ret
446b5b:	90                   	nop
446b5c:	3a 50 58             	cmp    0x58(%eax),%dl
446b5f:	74 11                	je     0x446b72
446b61:	88 50 58             	mov    %dl,0x58(%eax)
446b64:	6a 00                	push   $0x0
446b66:	33 c9                	xor    %ecx,%ecx
446b68:	ba 0c b0 00 00       	mov    $0xb00c,%edx
446b6d:	e8 36 12 00 00       	call   0x447da8
446b72:	c3                   	ret
446b73:	90                   	nop
446b74:	6a 00                	push   $0x0
446b76:	33 c9                	xor    %ecx,%ecx
446b78:	ba 0e 00 00 00       	mov    $0xe,%edx
446b7d:	e8 26 12 00 00       	call   0x447da8
446b82:	c3                   	ret
446b83:	90                   	nop
446b84:	52                   	push   %edx
446b85:	ba 0d 00 00 00       	mov    $0xd,%edx
446b8a:	e8 19 12 00 00       	call   0x447da8
446b8f:	c3                   	ret
446b90:	8b 90 ac 00 00 00    	mov    0xac(%eax),%edx
446b96:	85 d2                	test   %edx,%edx
446b98:	7e 03                	jle    0x446b9d
446b9a:	8b c2                	mov    %edx,%eax
446b9c:	c3                   	ret
446b9d:	8b 40 4c             	mov    0x4c(%eax),%eax
446ba0:	c3                   	ret
446ba1:	8d 40 00             	lea    0x0(%eax),%eax
446ba4:	8b 90 a8 00 00 00    	mov    0xa8(%eax),%edx
446baa:	85 d2                	test   %edx,%edx
446bac:	7e 03                	jle    0x446bb1
446bae:	8b c2                	mov    %edx,%eax
446bb0:	c3                   	ret
446bb1:	8b 40 48             	mov    0x48(%eax),%eax
446bb4:	c3                   	ret
446bb5:	8d 40 00             	lea    0x0(%eax),%eax
446bb8:	53                   	push   %ebx
446bb9:	56                   	push   %esi
446bba:	8b f2                	mov    %edx,%esi
446bbc:	8b d8                	mov    %eax,%ebx
446bbe:	89 73 7c             	mov    %esi,0x7c(%ebx)