443f4b:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
443f4f:	74 10                	je     0x443f61
443f51:	0f b6 47 24          	movzbl 0x24(%edi),%eax
443f55:	51                   	push   %ecx
443f56:	53                   	push   %ebx
443f57:	50                   	push   %eax
443f58:	6a 11                	push   $0x11
443f5a:	8b cf                	mov    %edi,%ecx
443f5c:	e8 bb 01 00 00       	call   0x44411c
443f61:	80 7e 03 00          	cmpb   $0x0,0x3(%esi)
443f65:	74 10                	je     0x443f77
443f67:	0f b6 47 25          	movzbl 0x25(%edi),%eax
443f6b:	51                   	push   %ecx
443f6c:	53                   	push   %ebx
443f6d:	50                   	push   %eax
443f6e:	6a 12                	push   $0x12
443f70:	8b cf                	mov    %edi,%ecx
443f72:	e8 a5 01 00 00       	call   0x44411c
443f77:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
443f7b:	74 10                	je     0x443f8d
443f7d:	0f b6 47 29          	movzbl 0x29(%edi),%eax
443f81:	51                   	push   %ecx
443f82:	53                   	push   %ebx
443f83:	50                   	push   %eax
443f84:	6a 5b                	push   $0x5b
443f86:	8b cf                	mov    %edi,%ecx
443f88:	e8 8f 01 00 00       	call   0x44411c
443f8d:	8b cf                	mov    %edi,%ecx
443f8f:	e8 6f eb ff ff       	call   0x442b03
443f94:	5b                   	pop    %ebx
443f95:	5f                   	pop    %edi
443f96:	5e                   	pop    %esi
443f97:	c9                   	leave
443f98:	c2 04 00             	ret    $0x4
443f9b:	55                   	push   %ebp
443f9c:	8b ec                	mov    %esp,%ebp
443f9e:	83 ec 28             	sub    $0x28,%esp
443fa1:	56                   	push   %esi
443fa2:	8b 75 08             	mov    0x8(%ebp),%esi
443fa5:	85 f6                	test   %esi,%esi
443fa7:	78 77                	js     0x444020
443fa9:	75 04                	jne    0x443faf
443fab:	6a 00                	push   $0x0
443fad:	eb 6b                	jmp    0x44401a
443faf:	83 fe 0f             	cmp    $0xf,%esi
443fb2:	73 65                	jae    0x444019
443fb4:	8d 45 f0             	lea    -0x10(%ebp),%eax
443fb7:	50                   	push   %eax
443fb8:	ff 15 ac d1 48 00    	call   *0x48d1ac
443fbe:	85 c0                	test   %eax,%eax
443fc0:	74 57                	je     0x444019
443fc2:	89 75 08             	mov    %esi,0x8(%ebp)
443fc5:	db 45 08             	fildl  0x8(%ebp)
443fc8:	85 f6                	test   %esi,%esi
443fca:	79 06                	jns    0x443fd2
443fcc:	dc 05 00 6a 4b 00    	faddl  0x4b6a00
443fd2:	dd 5d e8             	fstpl  -0x18(%ebp)
443fd5:	dd 45 e8             	fldl   -0x18(%ebp)
443fd8:	dd 5d d8             	fstpl  -0x28(%ebp)
443fdb:	6a 00                	push   $0x0
443fdd:	ff 15 70 d1 48 00    	call   *0x48d170
443fe3:	8d 45 f8             	lea    -0x8(%ebp),%eax
443fe6:	50                   	push   %eax
443fe7:	ff 15 ac d1 48 00    	call   *0x48d1ac
443fed:	8b 4d f8             	mov    -0x8(%ebp),%ecx
443ff0:	2b 4d f0             	sub    -0x10(%ebp),%ecx
443ff3:	8b 45 fc             	mov    -0x4(%ebp),%eax
443ff6:	1b 45 f4             	sbb    -0xc(%ebp),%eax
443ff9:	89 4d e8             	mov    %ecx,-0x18(%ebp)
443ffc:	89 45 ec             	mov    %eax,-0x14(%ebp)
443fff:	df 6d e8             	fildll -0x18(%ebp)
444002:	dd 5d e0             	fstpl  -0x20(%ebp)
444005:	e8 b3 a2 fd ff       	call   0x41e2bd
44400a:	dc 7d e0             	fdivrl -0x20(%ebp)
44400d:	dc 5d d8             	fcompl -0x28(%ebp)
444010:	df e0                	fnstsw %ax
444012:	f6 c4 05             	test   $0x5,%ah
444015:	7b c4                	jnp    0x443fdb
444017:	eb 07                	jmp    0x444020
444019:	56                   	push   %esi
44401a:	ff 15 70 d1 48 00    	call   *0x48d170
444020:	5e                   	pop    %esi
444021:	c9                   	leave
444022:	c2 04 00             	ret    $0x4
444025:	55                   	push   %ebp
444026:	8b ec                	mov    %esp,%ebp
444028:	51                   	push   %ecx
444029:	53                   	push   %ebx
44402a:	57                   	push   %edi
44402b:	8b 7d 08             	mov    0x8(%ebp),%edi
44402e:	8b d9                	mov    %ecx,%ebx
444030:	85 ff                	test   %edi,%edi
444032:	75 0a                	jne    0x44403e
444034:	80 7b 09 00          	cmpb   $0x0,0x9(%ebx)
444038:	0f 84 d8 00 00 00    	je     0x444116
44403e:	83 65 08 00          	andl   $0x0,0x8(%ebp)
444042:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
444046:	56                   	push   %esi
444047:	ff 15 74 d1 48 00    	call   *0x48d174
44404d:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
444051:	8b f0                	mov    %eax,%esi
444053:	0f 84 87 00 00 00    	je     0x4440e0
444059:	6a 00                	push   $0x0
44405b:	ff 15 1c d7 48 00    	call   *0x48d71c
444061:	50                   	push   %eax
444062:	ff 15 48 d6 48 00    	call   *0x48d648
444068:	6a 01                	push   $0x1
44406a:	50                   	push   %eax
44406b:	56                   	push   %esi
44406c:	a3 ec 3c 4c 00       	mov    %eax,0x4c3cec
444071:	ff 15 4c d6 48 00    	call   *0x48d64c
444077:	89 45 0c             	mov    %eax,0xc(%ebp)
44407a:	85 ff                	test   %edi,%edi
44407c:	74 38                	je     0x4440b6
44407e:	8d 45 fc             	lea    -0x4(%ebp),%eax
444081:	50                   	push   %eax
444082:	57                   	push   %edi
444083:	ff 15 48 d6 48 00    	call   *0x48d648
444089:	8b 0d ec 3c 4c 00    	mov    0x4c3cec,%ecx
44408f:	a3 f0 3c 4c 00       	mov    %eax,0x4c3cf0
444094:	3b c8                	cmp    %eax,%ecx
444096:	74 12                	je     0x4440aa
444098:	6a 01                	push   $0x1
44409a:	50                   	push   %eax
44409b:	51                   	push   %ecx
44409c:	ff 15 4c d6 48 00    	call   *0x48d64c
4440a2:	89 45 08             	mov    %eax,0x8(%ebp)
4440a5:	a1 f0 3c 4c 00       	mov    0x4c3cf0,%eax
4440aa:	6a 01                	push   $0x1
4440ac:	50                   	push   %eax
4440ad:	56                   	push   %esi
4440ae:	ff 15 4c d6 48 00    	call   *0x48d64c
4440b4:	eb 03                	jmp    0x4440b9
4440b6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4440b9:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4440bd:	75 56                	jne    0x444115
4440bf:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4440c3:	75 50                	jne    0x444115
4440c5:	85 c0                	test   %eax,%eax
4440c7:	75 4c                	jne    0x444115
4440c9:	a1 ec 3c 4c 00       	mov    0x4c3cec,%eax
4440ce:	3b f0                	cmp    %eax,%esi
4440d0:	75 43                	jne    0x444115
4440d2:	3b 05 f0 3c 4c 00    	cmp    0x4c3cf0,%eax
4440d8:	75 3b                	jne    0x444115
4440da:	83 63 20 00          	andl   $0x0,0x20(%ebx)
4440de:	eb 35                	jmp    0x444115
4440e0:	85 ff                	test   %edi,%edi
4440e2:	8b 3d 4c d6 48 00    	mov    0x48d64c,%edi
4440e8:	74 20                	je     0x44410a
4440ea:	6a 00                	push   $0x0
4440ec:	ff 35 f0 3c 4c 00    	push   0x4c3cf0
4440f2:	56                   	push   %esi
4440f3:	ff d7                	call   *%edi
4440f5:	a1 ec 3c 4c 00       	mov    0x4c3cec,%eax
4440fa:	8b 0d f0 3c 4c 00    	mov    0x4c3cf0,%ecx
444100:	3b c1                	cmp    %ecx,%eax
444102:	74 0b                	je     0x44410f
444104:	6a 00                	push   $0x0
444106:	51                   	push   %ecx
444107:	50                   	push   %eax
444108:	ff d7                	call   *%edi
44410a:	a1 ec 3c 4c 00       	mov    0x4c3cec,%eax
44410f:	6a 00                	push   $0x0
444111:	50                   	push   %eax
444112:	56                   	push   %esi
444113:	ff d7                	call   *%edi
444115:	5e                   	pop    %esi
444116:	5f                   	pop    %edi
444117:	5b                   	pop    %ebx
444118:	c9                   	leave
444119:	c2 08 00             	ret    $0x8
44411c:	55                   	push   %ebp
44411d:	8b ec                	mov    %esp,%ebp
44411f:	83 ec 1c             	sub    $0x1c,%esp
444122:	f6 41 0c 04          	testb  $0x4,0xc(%ecx)
444126:	74 33                	je     0x44415b
444128:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
44412c:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
444130:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
444134:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
444138:	0f b6 45 0c          	movzbl 0xc(%ebp),%eax
44413c:	66 89 45 ea          	mov    %ax,-0x16(%ebp)
444140:	8b 45 10             	mov    0x10(%ebp),%eax
444143:	89 45 ec             	mov    %eax,-0x14(%ebp)
444146:	6a 1c                	push   $0x1c
444148:	33 c9                	xor    %ecx,%ecx
44414a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44414d:	41                   	inc    %ecx
44414e:	50                   	push   %eax
44414f:	51                   	push   %ecx
444150:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
444153:	ff 15 d4 d5 48 00    	call   *0x48d5d4
444159:	eb 11                	jmp    0x44416c
44415b:	6a 00                	push   $0x0
44415d:	ff 75 10             	push   0x10(%ebp)
444160:	ff 75 0c             	push   0xc(%ebp)
444163:	ff 75 08             	push   0x8(%ebp)
444166:	ff 15 d0 d5 48 00    	call   *0x48d5d0
44416c:	c9                   	leave
44416d:	c2 10 00             	ret    $0x10
444170:	55                   	push   %ebp
444171:	8b ec                	mov    %esp,%ebp
444173:	33 c0                	xor    %eax,%eax
444175:	56                   	push   %esi
444176:	8b f1                	mov    %ecx,%esi
444178:	89 46 04             	mov    %eax,0x4(%esi)
44417b:	88 46 0a             	mov    %al,0xa(%esi)
44417e:	8b 45 08             	mov    0x8(%ebp),%eax
444181:	c7 06 ff 00 00 00    	movl   $0xff,(%esi)
444187:	66 89 46 08          	mov    %ax,0x8(%esi)
44418b:	66 85 c0             	test   %ax,%ax
44418e:	75 04                	jne    0x444194
444190:	32 c0                	xor    %al,%al
444192:	eb 45                	jmp    0x4441d9
444194:	50                   	push   %eax
444195:	ff 15 e8 d5 48 00    	call   *0x48d5e8
44419b:	0f b7 c0             	movzwl %ax,%eax
44419e:	66 83 f8 ff          	cmp    $0xffff,%ax
4441a2:	74 ec                	je     0x444190
4441a4:	53                   	push   %ebx
4441a5:	8b d8                	mov    %eax,%ebx
4441a7:	88 06                	mov    %al,(%esi)
4441a9:	0f b6 c0             	movzbl %al,%eax
4441ac:	6a 00                	push   $0x0
4441ae:	50                   	push   %eax
4441af:	c1 fb 08             	sar    $0x8,%ebx
4441b2:	ff 15 74 d6 48 00    	call   *0x48d674
4441b8:	88 46 07             	mov    %al,0x7(%esi)
4441bb:	f6 c3 01             	test   $0x1,%bl
4441be:	74 04                	je     0x4441c4
4441c0:	c6 46 01 01          	movb   $0x1,0x1(%esi)
4441c4:	f6 c3 02             	test   $0x2,%bl
4441c7:	74 04                	je     0x4441cd
4441c9:	c6 46 03 01          	movb   $0x1,0x3(%esi)
4441cd:	f6 c3 04             	test   $0x4,%bl
4441d0:	5b                   	pop    %ebx
4441d1:	74 04                	je     0x4441d7
4441d3:	c6 46 04 01          	movb   $0x1,0x4(%esi)
4441d7:	b0 01                	mov    $0x1,%al
4441d9:	5e                   	pop    %esi
4441da:	5d                   	pop    %ebp
4441db:	c2 04 00             	ret    $0x4
4441de:	55                   	push   %ebp
4441df:	8b ec                	mov    %esp,%ebp
4441e1:	53                   	push   %ebx
4441e2:	8a 5d 08             	mov    0x8(%ebp),%bl
4441e5:	33 c0                	xor    %eax,%eax
4441e7:	56                   	push   %esi
4441e8:	8b f1                	mov    %ecx,%esi
4441ea:	89 46 06             	mov    %eax,0x6(%esi)
4441ed:	89 46 01             	mov    %eax,0x1(%esi)
4441f0:	88 46 05             	mov    %al,0x5(%esi)
4441f3:	88 46 0a             	mov    %al,0xa(%esi)
4441f6:	88 1e                	mov    %bl,(%esi)
4441f8:	e8 0d ec ff ff       	call   0x442e0a
4441fd:	84 c0                	test   %al,%al
4441ff:	74 11                	je     0x444212
444201:	0f b6 c3             	movzbl %bl,%eax
444204:	6a 00                	push   $0x0
444206:	50                   	push   %eax
444207:	ff 15 74 d6 48 00    	call   *0x48d674
44420d:	88 46 07             	mov    %al,0x7(%esi)
444210:	b0 01                	mov    $0x1,%al
444212:	5e                   	pop    %esi
444213:	5b                   	pop    %ebx
444214:	5d                   	pop    %ebp
444215:	c2 04 00             	ret    $0x4
444218:	55                   	push   %ebp
444219:	8b ec                	mov    %esp,%ebp
44421b:	8d 45 10             	lea    0x10(%ebp),%eax
44421e:	50                   	push   %eax
44421f:	ff 75 0c             	push   0xc(%ebp)
444222:	ff 75 08             	push   0x8(%ebp)
444225:	e8 9b de fd ff       	call   0x4220c5
44422a:	83 c4 0c             	add    $0xc,%esp
44422d:	5d                   	pop    %ebp
44422e:	c3                   	ret
44422f:	55                   	push   %ebp
444230:	8b ec                	mov    %esp,%ebp
444232:	51                   	push   %ecx
444233:	56                   	push   %esi
444234:	57                   	push   %edi
444235:	8b f9                	mov    %ecx,%edi
444237:	33 f6                	xor    %esi,%esi
444239:	8d 47 04             	lea    0x4(%edi),%eax
44423c:	83 38 00             	cmpl   $0x0,(%eax)
44423f:	74 09                	je     0x44424a
444241:	46                   	inc    %esi
444242:	83 c0 08             	add    $0x8,%eax
444245:	83 fe 10             	cmp    $0x10,%esi
444248:	7c f2                	jl     0x44423c
44424a:	83 fe 10             	cmp    $0x10,%esi
44424d:	75 04                	jne    0x444253
44424f:	33 c0                	xor    %eax,%eax
444251:	eb 37                	jmp    0x44428a
444253:	8d 45 fc             	lea    -0x4(%ebp),%eax
444256:	50                   	push   %eax
444257:	ff 75 0c             	push   0xc(%ebp)
44425a:	ff 15 48 d6 48 00    	call   *0x48d648
444260:	ff 75 fc             	push   -0x4(%ebp)
444263:	6a 00                	push   $0x0
444265:	68 38 04 00 00       	push   $0x438
44426a:	ff 15 b4 d1 48 00    	call   *0x48d1b4
444270:	6a 04                	push   $0x4
444272:	68 00 10 00 00       	push   $0x1000
444277:	ff 75 08             	push   0x8(%ebp)
44427a:	89 04 f7             	mov    %eax,(%edi,%esi,8)
44427d:	6a 00                	push   $0x0
44427f:	50                   	push   %eax
444280:	ff 15 b8 d1 48 00    	call   *0x48d1b8
444286:	89 44 f7 04          	mov    %eax,0x4(%edi,%esi,8)
44428a:	5f                   	pop    %edi
44428b:	5e                   	pop    %esi
44428c:	c9                   	leave
44428d:	c2 08 00             	ret    $0x8
444290:	55                   	push   %ebp
444291:	8b ec                	mov    %esp,%ebp
444293:	56                   	push   %esi
444294:	57                   	push   %edi
444295:	8b f9                	mov    %ecx,%edi
444297:	8b 4d 08             	mov    0x8(%ebp),%ecx
44429a:	33 f6                	xor    %esi,%esi
44429c:	8d 47 04             	lea    0x4(%edi),%eax
44429f:	39 08                	cmp    %ecx,(%eax)
4442a1:	74 0b                	je     0x4442ae
4442a3:	46                   	inc    %esi
4442a4:	83 c0 08             	add    $0x8,%eax
4442a7:	83 fe 10             	cmp    $0x10,%esi
4442aa:	7c f3                	jl     0x44429f
4442ac:	eb 22                	jmp    0x4442d0
4442ae:	68 00 80 00 00       	push   $0x8000
4442b3:	6a 00                	push   $0x0
4442b5:	ff 74 f7 04          	push   0x4(%edi,%esi,8)
4442b9:	ff 34 f7             	push   (%edi,%esi,8)
4442bc:	ff 15 b0 d1 48 00    	call   *0x48d1b0
4442c2:	ff 34 f7             	push   (%edi,%esi,8)
4442c5:	ff 15 0c d3 48 00    	call   *0x48d30c
4442cb:	83 64 f7 04 00       	andl   $0x0,0x4(%edi,%esi,8)
4442d0:	5f                   	pop    %edi
4442d1:	5e                   	pop    %esi
4442d2:	5d                   	pop    %ebp
4442d3:	c2 04 00             	ret    $0x4
4442d6:	55                   	push   %ebp
4442d7:	8b ec                	mov    %esp,%ebp
4442d9:	56                   	push   %esi
4442da:	8b 75 08             	mov    0x8(%ebp),%esi
4442dd:	33 c0                	xor    %eax,%eax
4442df:	8d 51 04             	lea    0x4(%ecx),%edx
4442e2:	39 32                	cmp    %esi,(%edx)