44398f:	90                   	nop
443990:	53                   	push   %ebx
443991:	56                   	push   %esi
443992:	57                   	push   %edi
443993:	55                   	push   %ebp
443994:	83 c4 f0             	add    $0xfffffff0,%esp
443997:	8b fa                	mov    %edx,%edi
443999:	8b d8                	mov    %eax,%ebx
44399b:	8b 43 1c             	mov    0x1c(%ebx),%eax
44399e:	3b 58 64             	cmp    0x64(%eax),%ebx
4439a1:	74 1b                	je     0x4439be
4439a3:	8b 43 1c             	mov    0x1c(%ebx),%eax
4439a6:	8b 70 64             	mov    0x64(%eax),%esi
4439a9:	3b 73 14             	cmp    0x14(%ebx),%esi
4439ac:	75 46                	jne    0x4439f4
4439ae:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
4439b2:	74 40                	je     0x4439f4
4439b4:	8b c6                	mov    %esi,%eax
4439b6:	e8 65 fe ff ff       	call   0x443820
4439bb:	48                   	dec    %eax
4439bc:	75 36                	jne    0x4439f4
4439be:	8b d4                	mov    %esp,%edx
4439c0:	8b 43 1c             	mov    0x1c(%ebx),%eax
4439c3:	8b 40 14             	mov    0x14(%eax),%eax
4439c6:	8b 08                	mov    (%eax),%ecx
4439c8:	ff 51 44             	call   *0x44(%ecx)
4439cb:	8b d4                	mov    %esp,%edx
4439cd:	8b 43 1c             	mov    0x1c(%ebx),%eax
4439d0:	8b 40 14             	mov    0x14(%eax),%eax
4439d3:	8b 08                	mov    (%eax),%ecx
4439d5:	ff 91 90 00 00 00    	call   *0x90(%ecx)
4439db:	8b c7                	mov    %edi,%eax
4439dd:	3c 01                	cmp    $0x1,%al
4439df:	75 0a                	jne    0x4439eb
4439e1:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
4439e5:	2b 6c 24 04          	sub    0x4(%esp),%ebp
4439e9:	eb 51                	jmp    0x443a3c
4439eb:	8b 6c 24 08          	mov    0x8(%esp),%ebp
4439ef:	2b 2c 24             	sub    (%esp),%ebp
4439f2:	eb 48                	jmp    0x443a3c
4439f4:	8b f3                	mov    %ebx,%esi
4439f6:	eb 21                	jmp    0x443a19
4439f8:	8b c7                	mov    %edi,%eax
4439fa:	8b 56 14             	mov    0x14(%esi),%edx
4439fd:	3a 42 10             	cmp    0x10(%edx),%al
443a00:	75 14                	jne    0x443a16
443a02:	8b c6                	mov    %esi,%eax
443a04:	e8 5b 03 00 00       	call   0x443d64
443a09:	8b e8                	mov    %eax,%ebp
443a0b:	8b c6                	mov    %esi,%eax
443a0d:	e8 6a fe ff ff       	call   0x44387c
443a12:	2b e8                	sub    %eax,%ebp
443a14:	eb 26                	jmp    0x443a3c
443a16:	8b 76 14             	mov    0x14(%esi),%esi
443a19:	8b 43 1c             	mov    0x1c(%ebx),%eax
443a1c:	3b 70 64             	cmp    0x64(%eax),%esi
443a1f:	75 d7                	jne    0x4439f8
443a21:	8b cf                	mov    %edi,%ecx
443a23:	8b 43 1c             	mov    0x1c(%ebx),%eax
443a26:	8b 50 64             	mov    0x64(%eax),%edx
443a29:	3a 4a 10             	cmp    0x10(%edx),%cl
443a2c:	75 05                	jne    0x443a33
443a2e:	8b 68 68             	mov    0x68(%eax),%ebp
443a31:	eb 09                	jmp    0x443a3c
443a33:	8b c2                	mov    %edx,%eax
443a35:	e8 2a 03 00 00       	call   0x443d64
443a3a:	8b e8                	mov    %eax,%ebp
443a3c:	8b c5                	mov    %ebp,%eax
443a3e:	83 c4 10             	add    $0x10,%esp
443a41:	5d                   	pop    %ebp
443a42:	5f                   	pop    %edi
443a43:	5e                   	pop    %esi
443a44:	5b                   	pop    %ebx
443a45:	c3                   	ret
443a46:	8b c0                	mov    %eax,%eax
443a48:	53                   	push   %ebx
443a49:	56                   	push   %esi
443a4a:	57                   	push   %edi
443a4b:	8b f0                	mov    %eax,%esi
443a4d:	8b c6                	mov    %esi,%eax
443a4f:	e8 cc fd ff ff       	call   0x443820
443a54:	85 c0                	test   %eax,%eax
443a56:	0f 84 90 00 00 00    	je     0x443aec
443a5c:	80 7e 10 00          	cmpb   $0x0,0x10(%esi)
443a60:	0f 84 86 00 00 00    	je     0x443aec
443a66:	8b c6                	mov    %esi,%eax
443a68:	e8 fb 03 00 00       	call   0x443e68
443a6d:	8b d8                	mov    %eax,%ebx
443a6f:	0f b6 46 10          	movzbl 0x10(%esi),%eax
443a73:	fe c8                	dec    %al
443a75:	74 06                	je     0x443a7d
443a77:	fe c8                	dec    %al
443a79:	74 12                	je     0x443a8d
443a7b:	eb 20                	jmp    0x443a9d
443a7d:	ba 01 00 00 00       	mov    $0x1,%edx
443a82:	8b c6                	mov    %esi,%eax
443a84:	e8 07 ff ff ff       	call   0x443990
443a89:	8b f8                	mov    %eax,%edi
443a8b:	eb 12                	jmp    0x443a9f
443a8d:	ba 02 00 00 00       	mov    $0x2,%edx
443a92:	8b c6                	mov    %esi,%eax
443a94:	e8 f7 fe ff ff       	call   0x443990
443a99:	8b f8                	mov    %eax,%edi
443a9b:	eb 02                	jmp    0x443a9f
443a9d:	33 ff                	xor    %edi,%edi
443a9f:	8b c6                	mov    %esi,%eax
443aa1:	e8 7a fd ff ff       	call   0x443820
443aa6:	50                   	push   %eax
443aa7:	8b c7                	mov    %edi,%eax
443aa9:	5a                   	pop    %edx
443aaa:	8b ca                	mov    %edx,%ecx
443aac:	99                   	cltd
443aad:	f7 f9                	idiv   %ecx
443aaf:	8b f0                	mov    %eax,%esi
443ab1:	85 db                	test   %ebx,%ebx
443ab3:	74 37                	je     0x443aec
443ab5:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
443ab9:	75 0b                	jne    0x443ac6
443abb:	8b d7                	mov    %edi,%edx
443abd:	8b c3                	mov    %ebx,%eax
443abf:	e8 c8 02 00 00       	call   0x443d8c
443ac4:	eb 12                	jmp    0x443ad8
443ac6:	8b c3                	mov    %ebx,%eax
443ac8:	e8 af fd ff ff       	call   0x44387c
443acd:	8b d0                	mov    %eax,%edx
443acf:	03 d6                	add    %esi,%edx
443ad1:	8b c3                	mov    %ebx,%eax
443ad3:	e8 b4 02 00 00       	call   0x443d8c
443ad8:	8b c3                	mov    %ebx,%eax
443ada:	e8 09 01 00 00       	call   0x443be8
443adf:	8b c3                	mov    %ebx,%eax
443ae1:	e8 5a 03 00 00       	call   0x443e40
443ae6:	8b d8                	mov    %eax,%ebx
443ae8:	85 db                	test   %ebx,%ebx
443aea:	75 c9                	jne    0x443ab5
443aec:	5f                   	pop    %edi
443aed:	5e                   	pop    %esi
443aee:	5b                   	pop    %ebx
443aef:	c3                   	ret
443af0:	53                   	push   %ebx
443af1:	56                   	push   %esi
443af2:	57                   	push   %edi
443af3:	8b f2                	mov    %edx,%esi
443af5:	8b d8                	mov    %eax,%ebx
443af7:	8b c6                	mov    %esi,%eax
443af9:	e8 22 0c fc ff       	call   0x404720
443afe:	8b 7b 04             	mov    0x4(%ebx),%edi
443b01:	85 ff                	test   %edi,%edi
443b03:	74 2a                	je     0x443b2f
443b05:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
443b09:	75 17                	jne    0x443b22
443b0b:	8b 0d ac d5 46 00    	mov    0x46d5ac,%ecx
443b11:	b2 01                	mov    $0x1,%dl
443b13:	a1 ec 79 40 00       	mov    0x4079ec,%eax
443b18:	e8 db 87 fc ff       	call   0x40c2f8
443b1d:	e8 46 06 fc ff       	call   0x404168
443b22:	8b c6                	mov    %esi,%eax
443b24:	8b 53 04             	mov    0x4(%ebx),%edx
443b27:	8b 52 08             	mov    0x8(%edx),%edx
443b2a:	e8 45 0c fc ff       	call   0x404774
443b2f:	5f                   	pop    %edi
443b30:	5e                   	pop    %esi
443b31:	5b                   	pop    %ebx
443b32:	c3                   	ret
443b33:	90                   	nop
443b34:	55                   	push   %ebp
443b35:	8b ec                	mov    %esp,%ebp
443b37:	83 c4 f4             	add    $0xfffffff4,%esp
443b3a:	53                   	push   %ebx
443b3b:	56                   	push   %esi
443b3c:	8b d8                	mov    %eax,%ebx
443b3e:	33 c0                	xor    %eax,%eax
443b40:	89 45 f8             	mov    %eax,-0x8(%ebp)
443b43:	8b 43 1c             	mov    0x1c(%ebx),%eax
443b46:	89 45 f4             	mov    %eax,-0xc(%ebp)
443b49:	8d 4d f8             	lea    -0x8(%ebp),%ecx
443b4c:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b4f:	8b 40 14             	mov    0x14(%eax),%eax
443b52:	66 be b7 ff          	mov    $0xffb7,%si
443b56:	e8 95 ff fb ff       	call   0x403af0
443b5b:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
443b5f:	0f 95 45 ff          	setne  -0x1(%ebp)
443b63:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
443b67:	74 43                	je     0x443bac
443b69:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b6c:	89 58 38             	mov    %ebx,0x38(%eax)
443b6f:	33 c0                	xor    %eax,%eax
443b71:	55                   	push   %ebp
443b72:	68 a5 3b 44 00       	push   $0x443ba5
443b77:	64 ff 30             	push   %fs:(%eax)
443b7a:	64 89 20             	mov    %esp,%fs:(%eax)
443b7d:	6a 00                	push   $0x0
443b7f:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b82:	8b 50 14             	mov    0x14(%eax),%edx
443b85:	33 c9                	xor    %ecx,%ecx
443b87:	8b 45 f8             	mov    -0x8(%ebp),%eax
443b8a:	e8 d5 70 ff ff       	call   0x43ac64
443b8f:	33 c0                	xor    %eax,%eax
443b91:	5a                   	pop    %edx
443b92:	59                   	pop    %ecx
443b93:	59                   	pop    %ecx
443b94:	64 89 10             	mov    %edx,%fs:(%eax)
443b97:	68 ac 3b 44 00       	push   $0x443bac
443b9c:	8b 45 f4             	mov    -0xc(%ebp),%eax
443b9f:	33 d2                	xor    %edx,%edx
443ba1:	89 50 38             	mov    %edx,0x38(%eax)
443ba4:	c3                   	ret
443ba5:	e9 de 04 fc ff       	jmp    0x404088
443baa:	eb f0                	jmp    0x443b9c
443bac:	0f b6 45 ff          	movzbl -0x1(%ebp),%eax
443bb0:	5e                   	pop    %esi
443bb1:	5b                   	pop    %ebx
443bb2:	8b e5                	mov    %ebp,%esp
443bb4:	5d                   	pop    %ebp
443bb5:	c3                   	ret
443bb6:	8b c0                	mov    %eax,%eax
443bb8:	55                   	push   %ebp
443bb9:	8b ec                	mov    %esp,%ebp
443bbb:	53                   	push   %ebx
443bbc:	56                   	push   %esi
443bbd:	33 db                	xor    %ebx,%ebx
443bbf:	8b 45 08             	mov    0x8(%ebp),%eax
443bc2:	8b 40 fc             	mov    -0x4(%eax),%eax
443bc5:	8b 70 14             	mov    0x14(%eax),%esi
443bc8:	85 f6                	test   %esi,%esi
443bca:	74 16                	je     0x443be2
443bcc:	8b c6                	mov    %esi,%eax
443bce:	e8 6d 02 00 00       	call   0x443e40
443bd3:	85 c0                	test   %eax,%eax
443bd5:	74 04                	je     0x443bdb
443bd7:	b3 01                	mov    $0x1,%bl
443bd9:	eb 07                	jmp    0x443be2
443bdb:	8b 76 14             	mov    0x14(%esi),%esi
443bde:	85 f6                	test   %esi,%esi
443be0:	75 ea                	jne    0x443bcc
443be2:	8b c3                	mov    %ebx,%eax
443be4:	5e                   	pop    %esi
443be5:	5b                   	pop    %ebx
443be6:	5d                   	pop    %ebp
443be7:	c3                   	ret
443be8:	55                   	push   %ebp
443be9:	8b ec                	mov    %esp,%ebp
443beb:	83 c4 ec             	add    $0xffffffec,%esp
443bee:	53                   	push   %ebx
443bef:	56                   	push   %esi
443bf0:	57                   	push   %edi
443bf1:	89 45 fc             	mov    %eax,-0x4(%ebp)
443bf4:	8b 45 fc             	mov    -0x4(%ebp),%eax
443bf7:	8b 40 04             	mov    0x4(%eax),%eax
443bfa:	85 c0                	test   %eax,%eax
443bfc:	0f 84 58 01 00 00    	je     0x443d5a
443c02:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
443c06:	0f 84 4e 01 00 00    	je     0x443d5a
443c0c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c0f:	8b 52 1c             	mov    0x1c(%edx),%edx
443c12:	83 7a 6c 00          	cmpl   $0x0,0x6c(%edx)
443c16:	0f 85 3e 01 00 00    	jne    0x443d5a
443c1c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c1f:	8b 52 14             	mov    0x14(%edx),%edx
443c22:	0f b6 52 10          	movzbl 0x10(%edx),%edx
443c26:	88 90 90 00 00 00    	mov    %dl,0x90(%eax)
443c2c:	ba 02 00 00 00       	mov    $0x2,%edx
443c31:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c34:	e8 57 fd ff ff       	call   0x443990
443c39:	8b d8                	mov    %eax,%ebx
443c3b:	ba 01 00 00 00       	mov    $0x1,%edx
443c40:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c43:	e8 48 fd ff ff       	call   0x443990
443c48:	8b f0                	mov    %eax,%esi
443c4a:	55                   	push   %ebp
443c4b:	e8 68 ff ff ff       	call   0x443bb8
443c50:	59                   	pop    %ecx
443c51:	84 c0                	test   %al,%al
443c53:	74 20                	je     0x443c75
443c55:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c58:	8b 40 14             	mov    0x14(%eax),%eax
443c5b:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
443c5f:	75 0b                	jne    0x443c6c
443c61:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c64:	8b 40 1c             	mov    0x1c(%eax),%eax
443c67:	2b 58 0c             	sub    0xc(%eax),%ebx
443c6a:	eb 09                	jmp    0x443c75
443c6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c6f:	8b 40 1c             	mov    0x1c(%eax),%eax
443c72:	2b 70 0c             	sub    0xc(%eax),%esi
443c75:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c78:	e8 c3 01 00 00       	call   0x443e40
443c7d:	85 c0                	test   %eax,%eax
443c7f:	75 70                	jne    0x443cf1
443c81:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c84:	8b 40 14             	mov    0x14(%eax),%eax
443c87:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c8a:	8b 52 1c             	mov    0x1c(%edx),%edx
443c8d:	3b 42 64             	cmp    0x64(%edx),%eax
443c90:	74 2b                	je     0x443cbd
443c92:	8b 45 fc             	mov    -0x4(%ebp),%eax
443c95:	8b 40 14             	mov    0x14(%eax),%eax
443c98:	0f b6 40 10          	movzbl 0x10(%eax),%eax
443c9c:	8b 55 fc             	mov    -0x4(%ebp),%edx
443c9f:	8b 52 1c             	mov    0x1c(%edx),%edx
443ca2:	8b 52 64             	mov    0x64(%edx),%edx
443ca5:	3a 42 10             	cmp    0x10(%edx),%al
443ca8:	75 13                	jne    0x443cbd
443caa:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cad:	e8 b2 00 00 00       	call   0x443d64
443cb2:	8b 55 fc             	mov    -0x4(%ebp),%edx
443cb5:	8b 52 1c             	mov    0x1c(%edx),%edx
443cb8:	3b 42 68             	cmp    0x68(%edx),%eax
443cbb:	7c 34                	jl     0x443cf1
443cbd:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cc0:	8b 40 14             	mov    0x14(%eax),%eax
443cc3:	0f b6 40 10          	movzbl 0x10(%eax),%eax
443cc7:	8b 55 fc             	mov    -0x4(%ebp),%edx
443cca:	8b 52 1c             	mov    0x1c(%edx),%edx
443ccd:	8b 52 64             	mov    0x64(%edx),%edx
443cd0:	3a 42 10             	cmp    0x10(%edx),%al
443cd3:	74 3c                	je     0x443d11
443cd5:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cd8:	e8 87 00 00 00       	call   0x443d64
443cdd:	8b f8                	mov    %eax,%edi
443cdf:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ce2:	8b 40 1c             	mov    0x1c(%eax),%eax
443ce5:	8b 40 64             	mov    0x64(%eax),%eax
443ce8:	e8 77 00 00 00       	call   0x443d64
443ced:	3b f8                	cmp    %eax,%edi
443cef:	7d 20                	jge    0x443d11
443cf1:	8b 45 fc             	mov    -0x4(%ebp),%eax
443cf4:	8b 40 14             	mov    0x14(%eax),%eax
443cf7:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
443cfb:	75 0b                	jne    0x443d08
443cfd:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d00:	8b 40 1c             	mov    0x1c(%eax),%eax
443d03:	2b 70 0c             	sub    0xc(%eax),%esi
443d06:	eb 09                	jmp    0x443d11
443d08:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d0b:	8b 40 1c             	mov    0x1c(%eax),%eax
443d0e:	2b 58 0c             	sub    0xc(%eax),%ebx
443d11:	56                   	push   %esi
443d12:	8d 45 ec             	lea    -0x14(%ebp),%eax
443d15:	50                   	push   %eax
443d16:	ba 01 00 00 00       	mov    $0x1,%edx
443d1b:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d1e:	e8 e9 fb ff ff       	call   0x44390c
443d23:	50                   	push   %eax
443d24:	ba 02 00 00 00       	mov    $0x2,%edx
443d29:	8b 45 fc             	mov    -0x4(%ebp),%eax
443d2c:	e8 db fb ff ff       	call   0x44390c
443d31:	8b cb                	mov    %ebx,%ecx
443d33:	5a                   	pop    %edx
443d34:	e8 07 2a fd ff       	call   0x416740