445c9c:	eb 41                	jmp    0x445cdf
445c9e:	8b 43 0c             	mov    0xc(%ebx),%eax
445ca1:	d1 f8                	sar    $1,%eax
445ca3:	79 03                	jns    0x445ca8
445ca5:	83 d0 00             	adc    $0x0,%eax
445ca8:	8b 53 50             	mov    0x50(%ebx),%edx
445cab:	2b d0                	sub    %eax,%edx
445cad:	89 14 24             	mov    %edx,(%esp)
445cb0:	ba 01 00 00 00       	mov    $0x1,%edx
445cb5:	8b c6                	mov    %esi,%eax
445cb7:	e8 50 dc ff ff       	call   0x44390c
445cbc:	89 44 24 04          	mov    %eax,0x4(%esp)
445cc0:	8b 04 24             	mov    (%esp),%eax
445cc3:	03 43 0c             	add    0xc(%ebx),%eax
445cc6:	89 44 24 08          	mov    %eax,0x8(%esp)
445cca:	ba 01 00 00 00       	mov    $0x1,%edx
445ccf:	8b 43 60             	mov    0x60(%ebx),%eax
445cd2:	e8 b9 dc ff ff       	call   0x443990
445cd7:	03 44 24 04          	add    0x4(%esp),%eax
445cdb:	89 44 24 0c          	mov    %eax,0xc(%esp)
445cdf:	8b 43 10             	mov    0x10(%ebx),%eax
445ce2:	e8 65 db fd ff       	call   0x42384c
445ce7:	50                   	push   %eax
445ce8:	8b 43 58             	mov    0x58(%ebx),%eax
445ceb:	50                   	push   %eax
445cec:	e8 b7 0f fc ff       	call   0x406ca8
445cf1:	8b f0                	mov    %eax,%esi
445cf3:	68 49 00 5a 00       	push   $0x5a0049
445cf8:	8b 4c 24 10          	mov    0x10(%esp),%ecx
445cfc:	8b 54 24 08          	mov    0x8(%esp),%edx
445d00:	2b ca                	sub    %edx,%ecx
445d02:	51                   	push   %ecx
445d03:	8b 4c 24 10          	mov    0x10(%esp),%ecx
445d07:	8b 44 24 08          	mov    0x8(%esp),%eax
445d0b:	2b c8                	sub    %eax,%ecx
445d0d:	51                   	push   %ecx
445d0e:	52                   	push   %edx
445d0f:	50                   	push   %eax
445d10:	8b 43 58             	mov    0x58(%ebx),%eax
445d13:	50                   	push   %eax
445d14:	e8 5f 0f fc ff       	call   0x406c78
445d19:	56                   	push   %esi
445d1a:	8b 43 58             	mov    0x58(%ebx),%eax
445d1d:	50                   	push   %eax
445d1e:	e8 85 0f fc ff       	call   0x406ca8
445d23:	83 c4 10             	add    $0x10,%esp
445d26:	5e                   	pop    %esi
445d27:	5b                   	pop    %ebx
445d28:	c3                   	ret
445d29:	8d 40 00             	lea    0x0(%eax),%eax
445d2c:	55                   	push   %ebp
445d2d:	8b ec                	mov    %esp,%ebp
445d2f:	53                   	push   %ebx
445d30:	56                   	push   %esi
445d31:	57                   	push   %edi
445d32:	8b d8                	mov    %eax,%ebx
445d34:	8b 45 08             	mov    0x8(%ebp),%eax
445d37:	3b 58 fc             	cmp    -0x4(%eax),%ebx
445d3a:	74 59                	je     0x445d95
445d3c:	8b 43 14             	mov    0x14(%ebx),%eax
445d3f:	0f b6 40 10          	movzbl 0x10(%eax),%eax
445d43:	8b 55 08             	mov    0x8(%ebp),%edx
445d46:	8b 52 fc             	mov    -0x4(%edx),%edx
445d49:	8b 52 14             	mov    0x14(%edx),%edx
445d4c:	3a 42 10             	cmp    0x10(%edx),%al
445d4f:	75 44                	jne    0x445d95
445d51:	8b c3                	mov    %ebx,%eax
445d53:	e8 0c e0 ff ff       	call   0x443d64
445d58:	8b f8                	mov    %eax,%edi
445d5a:	8b 45 08             	mov    0x8(%ebp),%eax
445d5d:	8b 40 fc             	mov    -0x4(%eax),%eax
445d60:	e8 ff df ff ff       	call   0x443d64
445d65:	3b f8                	cmp    %eax,%edi
445d67:	7e 2c                	jle    0x445d95
445d69:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
445d6d:	74 0d                	je     0x445d7c
445d6f:	8b 73 04             	mov    0x4(%ebx),%esi
445d72:	85 f6                	test   %esi,%esi
445d74:	74 1f                	je     0x445d95
445d76:	80 7e 57 00          	cmpb   $0x0,0x57(%esi)
445d7a:	74 19                	je     0x445d95
445d7c:	8b 45 08             	mov    0x8(%ebp),%eax
445d7f:	8b 70 f8             	mov    -0x8(%eax),%esi
445d82:	8b c3                	mov    %ebx,%eax
445d84:	e8 db df ff ff       	call   0x443d64
445d89:	3b c6                	cmp    %esi,%eax
445d8b:	7e 02                	jle    0x445d8f
445d8d:	8b c6                	mov    %esi,%eax
445d8f:	8b 55 08             	mov    0x8(%ebp),%edx
445d92:	89 42 f8             	mov    %eax,-0x8(%edx)
445d95:	8b 43 0c             	mov    0xc(%ebx),%eax
445d98:	85 c0                	test   %eax,%eax
445d9a:	74 0a                	je     0x445da6
445d9c:	8b 55 08             	mov    0x8(%ebp),%edx
445d9f:	52                   	push   %edx
445da0:	e8 87 ff ff ff       	call   0x445d2c
445da5:	59                   	pop    %ecx
445da6:	8b 43 08             	mov    0x8(%ebx),%eax
445da9:	85 c0                	test   %eax,%eax
445dab:	74 0a                	je     0x445db7
445dad:	8b 55 08             	mov    0x8(%ebp),%edx
445db0:	52                   	push   %edx
445db1:	e8 76 ff ff ff       	call   0x445d2c
445db6:	59                   	pop    %ecx
445db7:	5f                   	pop    %edi
445db8:	5e                   	pop    %esi
445db9:	5b                   	pop    %ebx
445dba:	5d                   	pop    %ebp
445dbb:	c3                   	ret
445dbc:	55                   	push   %ebp
445dbd:	8b ec                	mov    %esp,%ebp
445dbf:	83 c4 f8             	add    $0xfffffff8,%esp
445dc2:	53                   	push   %ebx
445dc3:	56                   	push   %esi
445dc4:	89 55 fc             	mov    %edx,-0x4(%ebp)
445dc7:	8b d8                	mov    %eax,%ebx
445dc9:	8b 45 fc             	mov    -0x4(%ebp),%eax
445dcc:	8b 70 0c             	mov    0xc(%eax),%esi
445dcf:	85 f6                	test   %esi,%esi
445dd1:	74 0c                	je     0x445ddf
445dd3:	8b c6                	mov    %esi,%eax
445dd5:	e8 8a df ff ff       	call   0x443d64
445dda:	89 45 f8             	mov    %eax,-0x8(%ebp)
445ddd:	eb 17                	jmp    0x445df6
445ddf:	8b 45 fc             	mov    -0x4(%ebp),%eax
445de2:	e8 7d df ff ff       	call   0x443d64
445de7:	8b f0                	mov    %eax,%esi
445de9:	8b 45 fc             	mov    -0x4(%ebp),%eax
445dec:	e8 d3 da ff ff       	call   0x4438c4
445df1:	03 f0                	add    %eax,%esi
445df3:	89 75 f8             	mov    %esi,-0x8(%ebp)
445df6:	55                   	push   %ebp
445df7:	8b 43 64             	mov    0x64(%ebx),%eax
445dfa:	8b 40 08             	mov    0x8(%eax),%eax
445dfd:	e8 2a ff ff ff       	call   0x445d2c
445e02:	59                   	pop    %ecx
445e03:	8b 45 f8             	mov    -0x8(%ebp),%eax
445e06:	5e                   	pop    %esi
445e07:	5b                   	pop    %ebx
445e08:	59                   	pop    %ecx
445e09:	59                   	pop    %ecx
445e0a:	5d                   	pop    %ebp
445e0b:	c3                   	ret
445e0c:	55                   	push   %ebp
445e0d:	8b ec                	mov    %esp,%ebp
445e0f:	83 c4 e0             	add    $0xffffffe0,%esp
445e12:	53                   	push   %ebx
445e13:	56                   	push   %esi
445e14:	57                   	push   %edi
445e15:	8b f2                	mov    %edx,%esi
445e17:	8b f8                	mov    %eax,%edi
445e19:	b3 04                	mov    $0x4,%bl
445e1b:	85 f6                	test   %esi,%esi
445e1d:	74 60                	je     0x445e7f
445e1f:	8d 55 f0             	lea    -0x10(%ebp),%edx
445e22:	8b c7                	mov    %edi,%eax
445e24:	e8 93 39 ff ff       	call   0x4397bc
445e29:	8d 55 e0             	lea    -0x20(%ebp),%edx
445e2c:	8b c6                	mov    %esi,%eax
445e2e:	e8 89 39 ff ff       	call   0x4397bc
445e33:	8b 45 f4             	mov    -0xc(%ebp),%eax
445e36:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
445e39:	7f 14                	jg     0x445e4f
445e3b:	8b 45 fc             	mov    -0x4(%ebp),%eax
445e3e:	3b 45 ec             	cmp    -0x14(%ebp),%eax
445e41:	7d 0c                	jge    0x445e4f
445e43:	8b 45 f8             	mov    -0x8(%ebp),%eax
445e46:	3b 45 e8             	cmp    -0x18(%ebp),%eax
445e49:	7c 04                	jl     0x445e4f
445e4b:	b3 01                	mov    $0x1,%bl
445e4d:	eb 30                	jmp    0x445e7f
445e4f:	8b 45 f0             	mov    -0x10(%ebp),%eax
445e52:	3b 45 e0             	cmp    -0x20(%ebp),%eax
445e55:	7f 14                	jg     0x445e6b
445e57:	8b 45 f8             	mov    -0x8(%ebp),%eax
445e5a:	3b 45 e8             	cmp    -0x18(%ebp),%eax
445e5d:	7d 0c                	jge    0x445e6b
445e5f:	8b 45 fc             	mov    -0x4(%ebp),%eax
445e62:	3b 45 ec             	cmp    -0x14(%ebp),%eax
445e65:	7c 04                	jl     0x445e6b
445e67:	b3 03                	mov    $0x3,%bl
445e69:	eb 14                	jmp    0x445e7f
445e6b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
445e6e:	03 45 ec             	add    -0x14(%ebp),%eax
445e71:	d1 f8                	sar    $1,%eax
445e73:	79 03                	jns    0x445e78
445e75:	83 d0 00             	adc    $0x0,%eax
445e78:	3b 45 f4             	cmp    -0xc(%ebp),%eax
445e7b:	7f 02                	jg     0x445e7f
445e7d:	b3 02                	mov    $0x2,%bl
445e7f:	8b c3                	mov    %ebx,%eax
445e81:	5f                   	pop    %edi
445e82:	5e                   	pop    %esi
445e83:	5b                   	pop    %ebx
445e84:	8b e5                	mov    %ebp,%esp
445e86:	5d                   	pop    %ebp
445e87:	c3                   	ret
445e88:	55                   	push   %ebp
445e89:	8b ec                	mov    %esp,%ebp
445e8b:	53                   	push   %ebx
445e8c:	56                   	push   %esi
445e8d:	8b d8                	mov    %eax,%ebx
445e8f:	8b c3                	mov    %ebx,%eax
445e91:	e8 2e d9 ff ff       	call   0x4437c4
445e96:	84 c0                	test   %al,%al
445e98:	74 11                	je     0x445eab
445e9a:	8b c3                	mov    %ebx,%eax
445e9c:	e8 db d9 ff ff       	call   0x44387c
445ea1:	8b 53 20             	mov    0x20(%ebx),%edx
445ea4:	2b d0                	sub    %eax,%edx
445ea6:	89 53 24             	mov    %edx,0x24(%ebx)
445ea9:	eb 05                	jmp    0x445eb0
445eab:	33 c0                	xor    %eax,%eax
445ead:	89 43 24             	mov    %eax,0x24(%ebx)
445eb0:	8b 73 14             	mov    0x14(%ebx),%esi
445eb3:	85 f6                	test   %esi,%esi
445eb5:	74 18                	je     0x445ecf
445eb7:	8b c6                	mov    %esi,%eax
445eb9:	e8 86 d9 ff ff       	call   0x443844
445ebe:	84 c0                	test   %al,%al
445ec0:	75 0d                	jne    0x445ecf
445ec2:	8b 45 08             	mov    0x8(%ebp),%eax
445ec5:	50                   	push   %eax
445ec6:	8b 43 14             	mov    0x14(%ebx),%eax
445ec9:	e8 ba ff ff ff       	call   0x445e88
445ece:	59                   	pop    %ecx
445ecf:	8b c3                	mov    %ebx,%eax
445ed1:	e8 76 df ff ff       	call   0x443e4c
445ed6:	85 c0                	test   %eax,%eax
445ed8:	74 0f                	je     0x445ee9
445eda:	8b c3                	mov    %ebx,%eax
445edc:	e8 6b df ff ff       	call   0x443e4c
445ee1:	8b 53 20             	mov    0x20(%ebx),%edx
445ee4:	e8 b7 de ff ff       	call   0x443da0
445ee9:	8b 45 08             	mov    0x8(%ebp),%eax
445eec:	8b 40 fc             	mov    -0x4(%eax),%eax
445eef:	50                   	push   %eax
445ef0:	68 1c 5c 44 00       	push   $0x445c1c
445ef5:	8b 45 08             	mov    0x8(%ebp),%eax
445ef8:	8b 40 fc             	mov    -0x4(%eax),%eax
445efb:	8b 53 14             	mov    0x14(%ebx),%edx
445efe:	e8 1d e2 ff ff       	call   0x444120
445f03:	5e                   	pop    %esi
445f04:	5b                   	pop    %ebx
445f05:	5d                   	pop    %ebp
445f06:	c3                   	ret
445f07:	90                   	nop
445f08:	55                   	push   %ebp
445f09:	8b ec                	mov    %esp,%ebp
445f0b:	51                   	push   %ecx
445f0c:	53                   	push   %ebx
445f0d:	56                   	push   %esi
445f0e:	57                   	push   %edi
445f0f:	8b f8                	mov    %eax,%edi
445f11:	8b 77 14             	mov    0x14(%edi),%esi
445f14:	85 f6                	test   %esi,%esi
445f16:	74 22                	je     0x445f3a
445f18:	8b 45 08             	mov    0x8(%ebp),%eax
445f1b:	8b 40 fc             	mov    -0x4(%eax),%eax
445f1e:	3b 70 64             	cmp    0x64(%eax),%esi
445f21:	74 17                	je     0x445f3a
445f23:	8b c6                	mov    %esi,%eax
445f25:	e8 f6 d8 ff ff       	call   0x443820
445f2a:	48                   	dec    %eax
445f2b:	75 0d                	jne    0x445f3a
445f2d:	8b 45 08             	mov    0x8(%ebp),%eax
445f30:	50                   	push   %eax
445f31:	8b 47 14             	mov    0x14(%edi),%eax
445f34:	e8 cf ff ff ff       	call   0x445f08
445f39:	59                   	pop    %ecx
445f3a:	8b 47 14             	mov    0x14(%edi),%eax
445f3d:	e8 de d8 ff ff       	call   0x443820
445f42:	48                   	dec    %eax
445f43:	74 06                	je     0x445f4b
445f45:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
445f49:	75 07                	jne    0x445f52
445f4b:	b3 01                	mov    $0x1,%bl
445f4d:	e9 c2 00 00 00       	jmp    0x446014
445f52:	33 db                	xor    %ebx,%ebx
445f54:	8b 45 08             	mov    0x8(%ebp),%eax
445f57:	8b 40 fc             	mov    -0x4(%eax),%eax
445f5a:	8b 40 18             	mov    0x18(%eax),%eax
445f5d:	8b 55 08             	mov    0x8(%ebp),%edx
445f60:	8b 52 fc             	mov    -0x4(%edx),%edx
445f63:	03 42 0c             	add    0xc(%edx),%eax
445f66:	83 c0 0e             	add    $0xe,%eax
445f69:	89 45 fc             	mov    %eax,-0x4(%ebp)
445f6c:	8b c7                	mov    %edi,%eax
445f6e:	e8 d9 de ff ff       	call   0x443e4c
445f73:	85 c0                	test   %eax,%eax
445f75:	74 5b                	je     0x445fd2
445f77:	8b c7                	mov    %edi,%eax
445f79:	e8 ce de ff ff       	call   0x443e4c
445f7e:	8b f0                	mov    %eax,%esi
445f80:	8b c6                	mov    %esi,%eax
445f82:	e8 dd dd ff ff       	call   0x443d64
445f87:	50                   	push   %eax
445f88:	8b c6                	mov    %esi,%eax
445f8a:	e8 ed d8 ff ff       	call   0x44387c
445f8f:	5a                   	pop    %edx
445f90:	2b d0                	sub    %eax,%edx
445f92:	2b 57 24             	sub    0x24(%edi),%edx
445f95:	3b 55 fc             	cmp    -0x4(%ebp),%edx
445f98:	7d 04                	jge    0x445f9e
445f9a:	b3 01                	mov    $0x1,%bl
445f9c:	eb 76                	jmp    0x446014
445f9e:	8b c6                	mov    %esi,%eax
445fa0:	e8 bf dd ff ff       	call   0x443d64
445fa5:	8b d0                	mov    %eax,%edx
445fa7:	2b 57 24             	sub    0x24(%edi),%edx
445faa:	8b c6                	mov    %esi,%eax
445fac:	e8 db dd ff ff       	call   0x443d8c
445fb1:	8b c6                	mov    %esi,%eax
445fb3:	e8 ac dd ff ff       	call   0x443d64
445fb8:	8b d0                	mov    %eax,%edx
445fba:	03 57 24             	add    0x24(%edi),%edx
445fbd:	8b c7                	mov    %edi,%eax
445fbf:	e8 c8 dd ff ff       	call   0x443d8c
445fc4:	8b c7                	mov    %edi,%eax
445fc6:	e8 81 de ff ff       	call   0x443e4c
445fcb:	e8 10 de ff ff       	call   0x443de0
445fd0:	eb 42                	jmp    0x446014
445fd2:	8b c7                	mov    %edi,%eax
445fd4:	e8 67 de ff ff       	call   0x443e40
445fd9:	85 c0                	test   %eax,%eax
445fdb:	74 37                	je     0x446014
445fdd:	8b c7                	mov    %edi,%eax
445fdf:	e8 5c de ff ff       	call   0x443e40
445fe4:	e8 7b dd ff ff       	call   0x443d64
445fe9:	2b 47 24             	sub    0x24(%edi),%eax
445fec:	3b 45 fc             	cmp    -0x4(%ebp),%eax
445fef:	7d 04                	jge    0x445ff5
445ff1:	b3 01                	mov    $0x1,%bl
445ff3:	eb 1f                	jmp    0x446014
445ff5:	8b c7                	mov    %edi,%eax
445ff7:	e8 80 d8 ff ff       	call   0x44387c
445ffc:	8b d0                	mov    %eax,%edx
445ffe:	03 57 24             	add    0x24(%edi),%edx
446001:	8b c7                	mov    %edi,%eax
446003:	e8 84 dd ff ff       	call   0x443d8c
446008:	8b c7                	mov    %edi,%eax
44600a:	e8 31 de ff ff       	call   0x443e40
44600f:	e8 cc dd ff ff       	call   0x443de0
446014:	84 db                	test   %bl,%bl
446016:	74 08                	je     0x446020
446018:	8b 47 14             	mov    0x14(%edi),%eax
44601b:	e8 28 da ff ff       	call   0x443a48
446020:	8b 45 08             	mov    0x8(%ebp),%eax
446023:	8b 40 fc             	mov    -0x4(%eax),%eax
446026:	50                   	push   %eax