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
446027:	68 1c 5c 44 00       	push   $0x445c1c
44602c:	8b 45 08             	mov    0x8(%ebp),%eax
44602f:	8b 40 fc             	mov    -0x4(%eax),%eax
446032:	8b 57 14             	mov    0x14(%edi),%edx
446035:	e8 e6 e0 ff ff       	call   0x444120
44603a:	5f                   	pop    %edi
44603b:	5e                   	pop    %esi
44603c:	5b                   	pop    %ebx
44603d:	59                   	pop    %ecx
44603e:	5d                   	pop    %ebp
44603f:	c3                   	ret
446040:	55                   	push   %ebp
446041:	8b ec                	mov    %esp,%ebp
446043:	83 c4 f0             	add    $0xfffffff0,%esp
446046:	53                   	push   %ebx
446047:	56                   	push   %esi
446048:	8b d9                	mov    %ecx,%ebx
44604a:	8b f2                	mov    %edx,%esi
44604c:	89 45 fc             	mov    %eax,-0x4(%ebp)
44604f:	8b d6                	mov    %esi,%edx
446051:	8b 45 fc             	mov    -0x4(%ebp),%eax
446054:	e8 5f e0 ff ff       	call   0x4440b8
446059:	85 c0                	test   %eax,%eax
44605b:	74 24                	je     0x446081
44605d:	84 db                	test   %bl,%bl
44605f:	74 09                	je     0x44606a
446061:	55                   	push   %ebp
446062:	e8 a1 fe ff ff       	call   0x445f08
446067:	59                   	pop    %ecx
446068:	eb 07                	jmp    0x446071
44606a:	55                   	push   %ebp
44606b:	e8 18 fe ff ff       	call   0x445e88
446070:	59                   	pop    %ecx
446071:	8b 45 fc             	mov    -0x4(%ebp),%eax
446074:	8b 40 14             	mov    0x14(%eax),%eax
446077:	8b 10                	mov    (%eax),%edx
446079:	ff 92 80 00 00 00    	call   *0x80(%edx)
44607f:	eb 41                	jmp    0x4460c2
446081:	84 db                	test   %bl,%bl
446083:	74 3d                	je     0x4460c2
446085:	8d 4d f0             	lea    -0x10(%ebp),%ecx
446088:	8b 56 44             	mov    0x44(%esi),%edx
44608b:	8b 46 40             	mov    0x40(%esi),%eax
44608e:	e8 5d 06 fd ff       	call   0x4166f0
446093:	8d 55 f0             	lea    -0x10(%ebp),%edx
446096:	8d 4d f8             	lea    -0x8(%ebp),%ecx
446099:	8b 45 fc             	mov    -0x4(%ebp),%eax
44609c:	e8 fb e7 ff ff       	call   0x44489c
4460a1:	85 c0                	test   %eax,%eax
4460a3:	74 05                	je     0x4460aa
4460a5:	8b 58 04             	mov    0x4(%eax),%ebx
4460a8:	eb 02                	jmp    0x4460ac
4460aa:	33 db                	xor    %ebx,%ebx
4460ac:	53                   	push   %ebx
4460ad:	8b d3                	mov    %ebx,%edx
4460af:	8b c6                	mov    %esi,%eax
4460b1:	e8 56 fd ff ff       	call   0x445e0c
4460b6:	8b c8                	mov    %eax,%ecx
4460b8:	8b d6                	mov    %esi,%edx
4460ba:	8b 45 fc             	mov    -0x4(%ebp),%eax
4460bd:	8b 18                	mov    (%eax),%ebx
4460bf:	ff 53 0c             	call   *0xc(%ebx)
4460c2:	5e                   	pop    %esi
4460c3:	5b                   	pop    %ebx
4460c4:	8b e5                	mov    %ebp,%esp
4460c6:	5d                   	pop    %ebp
4460c7:	c3                   	ret
4460c8:	53                   	push   %ebx
4460c9:	56                   	push   %esi
4460ca:	57                   	push   %edi
4460cb:	55                   	push   %ebp
4460cc:	83 c4 e8             	add    $0xffffffe8,%esp
4460cf:	8b f2                	mov    %edx,%esi
4460d1:	8b f8                	mov    %eax,%edi
4460d3:	c6 44 24 0c 00       	movb   $0x0,0xc(%esp)
4460d8:	8b 06                	mov    (%esi),%eax
4460da:	3d 04 02 00 00       	cmp    $0x204,%eax
4460df:	7f 3b                	jg     0x44611c
4460e1:	0f 84 25 01 00 00    	je     0x44620c
4460e7:	3d 01 02 00 00       	cmp    $0x201,%eax
4460ec:	7f 1b                	jg     0x446109
4460ee:	0f 84 f0 00 00 00    	je     0x4461e4
4460f4:	83 e8 20             	sub    $0x20,%eax
4460f7:	0f 84 87 01 00 00    	je     0x446284
4460fd:	2d e0 01 00 00       	sub    $0x1e0,%eax
446102:	74 5f                	je     0x446163
446104:	e9 32 02 00 00       	jmp    0x44633b
446109:	2d 02 02 00 00       	sub    $0x202,%eax
44610e:	0f 84 20 01 00 00    	je     0x446234
446114:	48                   	dec    %eax
446115:	74 71                	je     0x446188
446117:	e9 1f 02 00 00       	jmp    0x44633b
44611c:	2d 05 02 00 00       	sub    $0x205,%eax
446121:	0f 84 35 01 00 00    	je     0x44625c
446127:	48                   	dec    %eax
446128:	0f 84 88 00 00 00    	je     0x4461b6
44612e:	2d 2a ae 00 00       	sub    $0xae2a,%eax
446133:	0f 84 db 01 00 00    	je     0x446314
446139:	83 e8 12             	sub    $0x12,%eax
44613c:	0f 85 f9 01 00 00    	jne    0x44633b
446142:	8b 46 08             	mov    0x8(%esi),%eax
446145:	81 38 0b b0 00 00    	cmpl   $0xb00b,(%eax)
44614b:	0f 85 ea 01 00 00    	jne    0x44633b
446151:	8b 48 04             	mov    0x4(%eax),%ecx
446154:	8b 56 04             	mov    0x4(%esi),%edx
446157:	8b c7                	mov    %edi,%eax
446159:	e8 e2 fe ff ff       	call   0x446040
44615e:	e9 d8 01 00 00       	jmp    0x44633b
446163:	0f bf 46 0a          	movswl 0xa(%esi),%eax
446167:	50                   	push   %eax
446168:	8d 44 24 10          	lea    0x10(%esp),%eax
44616c:	50                   	push   %eax
44616d:	0f b7 46 04          	movzwl 0x4(%esi),%eax
446171:	e8 32 60 00 00       	call   0x44c1a8
446176:	8b d0                	mov    %eax,%edx
446178:	0f bf 4e 08          	movswl 0x8(%esi),%ecx
44617c:	8b c7                	mov    %edi,%eax
44617e:	8b 18                	mov    (%eax),%ebx
446180:	ff 53 18             	call   *0x18(%ebx)
446183:	e9 b3 01 00 00       	jmp    0x44633b
446188:	0f bf 46 08          	movswl 0x8(%esi),%eax
44618c:	50                   	push   %eax
44618d:	0f bf 46 0a          	movswl 0xa(%esi),%eax
446191:	50                   	push   %eax
446192:	8d 44 24 14          	lea    0x14(%esp),%eax
446196:	50                   	push   %eax
446197:	0f b7 46 04          	movzwl 0x4(%esi),%eax
44619b:	e8 08 60 00 00       	call   0x44c1a8
4461a0:	8b c8                	mov    %eax,%ecx
4461a2:	0a 0d 5c 63 44 00    	or     0x44635c,%cl
4461a8:	33 d2                	xor    %edx,%edx
4461aa:	8b c7                	mov    %edi,%eax
4461ac:	8b 18                	mov    (%eax),%ebx
4461ae:	ff 53 14             	call   *0x14(%ebx)
4461b1:	e9 85 01 00 00       	jmp    0x44633b
4461b6:	0f bf 46 08          	movswl 0x8(%esi),%eax
4461ba:	50                   	push   %eax
4461bb:	0f bf 46 0a          	movswl 0xa(%esi),%eax
4461bf:	50                   	push   %eax
4461c0:	8d 44 24 14          	lea    0x14(%esp),%eax
4461c4:	50                   	push   %eax
4461c5:	0f b7 46 04          	movzwl 0x4(%esi),%eax
4461c9:	e8 da 5f 00 00       	call   0x44c1a8
4461ce:	8b c8                	mov    %eax,%ecx
4461d0:	0a 0d 5c 63 44 00    	or     0x44635c,%cl
4461d6:	b2 01                	mov    $0x1,%dl
4461d8:	8b c7                	mov    %edi,%eax
4461da:	8b 18                	mov    (%eax),%ebx
4461dc:	ff 53 14             	call   *0x14(%ebx)
4461df:	e9 57 01 00 00       	jmp    0x44633b
4461e4:	0f bf 46 08          	movswl 0x8(%esi),%eax
4461e8:	50                   	push   %eax
4461e9:	0f bf 46 0a          	movswl 0xa(%esi),%eax
4461ed:	50                   	push   %eax
4461ee:	8d 44 24 14          	lea    0x14(%esp),%eax
4461f2:	50                   	push   %eax
4461f3:	0f b7 46 04          	movzwl 0x4(%esi),%eax
4461f7:	e8 ac 5f 00 00       	call   0x44c1a8
4461fc:	8b c8                	mov    %eax,%ecx
4461fe:	33 d2                	xor    %edx,%edx
446200:	8b c7                	mov    %edi,%eax
446202:	8b 18                	mov    (%eax),%ebx
446204:	ff 53 14             	call   *0x14(%ebx)
446207:	e9 2f 01 00 00       	jmp    0x44633b
44620c:	0f bf 46 08          	movswl 0x8(%esi),%eax
446210:	50                   	push   %eax
446211:	0f bf 46 0a          	movswl 0xa(%esi),%eax
446215:	50                   	push   %eax
446216:	8d 44 24 14          	lea    0x14(%esp),%eax
44621a:	50                   	push   %eax
44621b:	0f b7 46 04          	movzwl 0x4(%esi),%eax
44621f:	e8 84 5f 00 00       	call   0x44c1a8
446224:	8b c8                	mov    %eax,%ecx
446226:	b2 01                	mov    $0x1,%dl
446228:	8b c7                	mov    %edi,%eax