443e6b:	8b 7c 24 04          	mov    0x4(%esp),%edi
443e6f:	85 c9                	test   %ecx,%ecx
443e71:	0f 84 3c 01 00 00    	je     0x443fb3
443e77:	69 c0 01 01 01 01    	imul   $0x1010101,%eax,%eax
443e7d:	83 f9 20             	cmp    $0x20,%ecx
443e80:	0f 86 df 00 00 00    	jbe    0x443f65
443e86:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
443e8c:	0f 82 8b 00 00 00    	jb     0x443f1d
443e92:	0f ba 25 e0 af 4b 00 	btl    $0x1,0x4bafe0
443e99:	01
443e9a:	73 09                	jae    0x443ea5
443e9c:	f3 aa                	rep stos %al,%es:(%edi)
443e9e:	8b 44 24 04          	mov    0x4(%esp),%eax
443ea2:	8b fa                	mov    %edx,%edi
443ea4:	c3                   	ret
443ea5:	0f ba 25 a0 80 4b 00 	btl    $0x1,0x4b80a0
443eac:	01
443ead:	0f 83 b2 00 00 00    	jae    0x443f65
443eb3:	66 0f 6e c0          	movd   %eax,%xmm0
443eb7:	66 0f 70 c0 00       	pshufd $0x0,%xmm0,%xmm0
443ebc:	03 cf                	add    %edi,%ecx
443ebe:	0f 11 07             	movups %xmm0,(%edi)
443ec1:	83 c7 10             	add    $0x10,%edi
443ec4:	83 e7 f0             	and    $0xfffffff0,%edi
443ec7:	2b cf                	sub    %edi,%ecx
443ec9:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
443ecf:	76 4c                	jbe    0x443f1d
443ed1:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
443ed8:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
443edf:	90                   	nop
443ee0:	66 0f 7f 07          	movdqa %xmm0,(%edi)
443ee4:	66 0f 7f 47 10       	movdqa %xmm0,0x10(%edi)
443ee9:	66 0f 7f 47 20       	movdqa %xmm0,0x20(%edi)
443eee:	66 0f 7f 47 30       	movdqa %xmm0,0x30(%edi)
443ef3:	66 0f 7f 47 40       	movdqa %xmm0,0x40(%edi)
443ef8:	66 0f 7f 47 50       	movdqa %xmm0,0x50(%edi)
443efd:	66 0f 7f 47 60       	movdqa %xmm0,0x60(%edi)
443f02:	66 0f 7f 47 70       	movdqa %xmm0,0x70(%edi)
443f07:	8d bf 80 00 00 00    	lea    0x80(%edi),%edi
443f0d:	81 e9 80 00 00 00    	sub    $0x80,%ecx
443f13:	f7 c1 00 ff ff ff    	test   $0xffffff00,%ecx
443f19:	75 c5                	jne    0x443ee0
443f1b:	eb 13                	jmp    0x443f30
443f1d:	0f ba 25 a0 80 4b 00 	btl    $0x1,0x4b80a0
443f24:	01
443f25:	73 3e                	jae    0x443f65
443f27:	66 0f 6e c0          	movd   %eax,%xmm0
443f2b:	66 0f 70 c0 00       	pshufd $0x0,%xmm0,%xmm0
443f30:	83 f9 20             	cmp    $0x20,%ecx
443f33:	72 1c                	jb     0x443f51
443f35:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
443f39:	f3 0f 7f 47 10       	movdqu %xmm0,0x10(%edi)
443f3e:	83 c7 20             	add    $0x20,%edi
443f41:	83 e9 20             	sub    $0x20,%ecx
443f44:	83 f9 20             	cmp    $0x20,%ecx
443f47:	73 ec                	jae    0x443f35
443f49:	f7 c1 1f 00 00 00    	test   $0x1f,%ecx
443f4f:	74 62                	je     0x443fb3
443f51:	8d 7c 0f e0          	lea    -0x20(%edi,%ecx,1),%edi
443f55:	f3 0f 7f 07          	movdqu %xmm0,(%edi)
443f59:	f3 0f 7f 47 10       	movdqu %xmm0,0x10(%edi)
443f5e:	8b 44 24 04          	mov    0x4(%esp),%eax
443f62:	8b fa                	mov    %edx,%edi
443f64:	c3                   	ret
443f65:	f7 c1 03 00 00 00    	test   $0x3,%ecx
443f6b:	74 0e                	je     0x443f7b
443f6d:	88 07                	mov    %al,(%edi)
443f6f:	47                   	inc    %edi
443f70:	83 e9 01             	sub    $0x1,%ecx
443f73:	f7 c1 03 00 00 00    	test   $0x3,%ecx
443f79:	75 f2                	jne    0x443f6d
443f7b:	f7 c1 04 00 00 00    	test   $0x4,%ecx
443f81:	74 08                	je     0x443f8b
443f83:	89 07                	mov    %eax,(%edi)
443f85:	83 c7 04             	add    $0x4,%edi
443f88:	83 e9 04             	sub    $0x4,%ecx
443f8b:	f7 c1 f8 ff ff ff    	test   $0xfffffff8,%ecx
443f91:	74 20                	je     0x443fb3
443f93:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
443f9a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
443fa0:	89 07                	mov    %eax,(%edi)
443fa2:	89 47 04             	mov    %eax,0x4(%edi)
443fa5:	83 c7 08             	add    $0x8,%edi
443fa8:	83 e9 08             	sub    $0x8,%ecx
443fab:	f7 c1 f8 ff ff ff    	test   $0xfffffff8,%ecx
443fb1:	75 ed                	jne    0x443fa0
443fb3:	8b 44 24 04          	mov    0x4(%esp),%eax
443fb7:	8b fa                	mov    %edx,%edi
443fb9:	c3                   	ret
443fba:	cc                   	int3
443fbb:	cc                   	int3
443fbc:	cc                   	int3
443fbd:	cc                   	int3
443fbe:	cc                   	int3
443fbf:	cc                   	int3
443fc0:	83 3d dc af 4b 00 01 	cmpl   $0x1,0x4bafdc
443fc7:	72 5f                	jb     0x444028
443fc9:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
443fce:	8b d0                	mov    %eax,%edx
443fd0:	c1 e0 08             	shl    $0x8,%eax
443fd3:	0b d0                	or     %eax,%edx
443fd5:	66 0f 6e da          	movd   %edx,%xmm3
443fd9:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
443fde:	0f 16 db             	movlhps %xmm3,%xmm3
443fe1:	8b 54 24 04          	mov    0x4(%esp),%edx
443fe5:	b9 0f 00 00 00       	mov    $0xf,%ecx
443fea:	83 c8 ff             	or     $0xffffffff,%eax
443fed:	23 ca                	and    %edx,%ecx
443fef:	d3 e0                	shl    %cl,%eax
443ff1:	2b d1                	sub    %ecx,%edx
443ff3:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
443ff7:	66 0f ef d2          	pxor   %xmm2,%xmm2
443ffb:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
443fff:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
444003:	66 0f eb d1          	por    %xmm1,%xmm2
444007:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
44400b:	23 c8                	and    %eax,%ecx
44400d:	75 08                	jne    0x444017
44400f:	83 c8 ff             	or     $0xffffffff,%eax
444012:	83 c2 10             	add    $0x10,%edx
444015:	eb dc                	jmp    0x443ff3
444017:	0f bc c1             	bsf    %ecx,%eax
44401a:	03 c2                	add    %edx,%eax
44401c:	66 0f 7e da          	movd   %xmm3,%edx
444020:	33 c9                	xor    %ecx,%ecx
444022:	3a 10                	cmp    (%eax),%dl
444024:	0f 45 c1             	cmovne %ecx,%eax
444027:	c3                   	ret
444028:	33 c0                	xor    %eax,%eax
44402a:	8a 44 24 08          	mov    0x8(%esp),%al
44402e:	53                   	push   %ebx
44402f:	8b d8                	mov    %eax,%ebx
444031:	c1 e0 08             	shl    $0x8,%eax
444034:	8b 54 24 08          	mov    0x8(%esp),%edx
444038:	f7 c2 03 00 00 00    	test   $0x3,%edx
44403e:	74 15                	je     0x444055
444040:	8a 0a                	mov    (%edx),%cl
444042:	83 c2 01             	add    $0x1,%edx
444045:	3a cb                	cmp    %bl,%cl
444047:	74 59                	je     0x4440a2
444049:	84 c9                	test   %cl,%cl
44404b:	74 51                	je     0x44409e
44404d:	f7 c2 03 00 00 00    	test   $0x3,%edx
444053:	75 eb                	jne    0x444040
444055:	0b d8                	or     %eax,%ebx
444057:	57                   	push   %edi
444058:	8b c3                	mov    %ebx,%eax
44405a:	c1 e3 10             	shl    $0x10,%ebx
44405d:	56                   	push   %esi
44405e:	0b d8                	or     %eax,%ebx
444060:	8b 0a                	mov    (%edx),%ecx
444062:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
444067:	8b c1                	mov    %ecx,%eax
444069:	8b f7                	mov    %edi,%esi
44406b:	33 cb                	xor    %ebx,%ecx
44406d:	03 f0                	add    %eax,%esi
44406f:	03 f9                	add    %ecx,%edi
444071:	83 f1 ff             	xor    $0xffffffff,%ecx
444074:	83 f0 ff             	xor    $0xffffffff,%eax
444077:	33 cf                	xor    %edi,%ecx
444079:	33 c6                	xor    %esi,%eax
44407b:	83 c2 04             	add    $0x4,%edx
44407e:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
444084:	75 21                	jne    0x4440a7
444086:	25 00 01 01 81       	and    $0x81010100,%eax
44408b:	74 d3                	je     0x444060
44408d:	25 00 01 01 01       	and    $0x1010100,%eax
444092:	75 08                	jne    0x44409c
444094:	81 e6 00 00 00 80    	and    $0x80000000,%esi
44409a:	75 c4                	jne    0x444060
44409c:	5e                   	pop    %esi
44409d:	5f                   	pop    %edi
44409e:	5b                   	pop    %ebx
44409f:	33 c0                	xor    %eax,%eax
4440a1:	c3                   	ret
4440a2:	8d 42 ff             	lea    -0x1(%edx),%eax
4440a5:	5b                   	pop    %ebx
4440a6:	c3                   	ret
4440a7:	8b 42 fc             	mov    -0x4(%edx),%eax
4440aa:	3a c3                	cmp    %bl,%al
4440ac:	74 36                	je     0x4440e4
4440ae:	84 c0                	test   %al,%al
4440b0:	74 ea                	je     0x44409c
4440b2:	3a e3                	cmp    %bl,%ah
4440b4:	74 27                	je     0x4440dd
4440b6:	84 e4                	test   %ah,%ah
4440b8:	74 e2                	je     0x44409c
4440ba:	c1 e8 10             	shr    $0x10,%eax
4440bd:	3a c3                	cmp    %bl,%al
4440bf:	74 15                	je     0x4440d6
4440c1:	84 c0                	test   %al,%al
4440c3:	74 d7                	je     0x44409c
4440c5:	3a e3                	cmp    %bl,%ah
4440c7:	74 06                	je     0x4440cf
4440c9:	84 e4                	test   %ah,%ah
4440cb:	74 cf                	je     0x44409c
4440cd:	eb 91                	jmp    0x444060
4440cf:	5e                   	pop    %esi
4440d0:	5f                   	pop    %edi
4440d1:	8d 42 ff             	lea    -0x1(%edx),%eax
4440d4:	5b                   	pop    %ebx
4440d5:	c3                   	ret
4440d6:	8d 42 fe             	lea    -0x2(%edx),%eax
4440d9:	5e                   	pop    %esi
4440da:	5f                   	pop    %edi
4440db:	5b                   	pop    %ebx
4440dc:	c3                   	ret
4440dd:	8d 42 fd             	lea    -0x3(%edx),%eax
4440e0:	5e                   	pop    %esi
4440e1:	5f                   	pop    %edi
4440e2:	5b                   	pop    %ebx
4440e3:	c3                   	ret
4440e4:	8d 42 fc             	lea    -0x4(%edx),%eax
4440e7:	5e                   	pop    %esi
4440e8:	5f                   	pop    %edi
4440e9:	5b                   	pop    %ebx
4440ea:	c3                   	ret
4440eb:	55                   	push   %ebp
4440ec:	8b ec                	mov    %esp,%ebp
4440ee:	ff 75 08             	push   0x8(%ebp)
4440f1:	e8 98 8c 00 00       	call   0x44cd8e
4440f6:	59                   	pop    %ecx
4440f7:	5d                   	pop    %ebp
4440f8:	c2 04 00             	ret    $0x4
4440fb:	55                   	push   %ebp
4440fc:	8b ec                	mov    %esp,%ebp
4440fe:	8b 45 08             	mov    0x8(%ebp),%eax
444101:	89 01                	mov    %eax,(%ecx)
444103:	8b c1                	mov    %ecx,%eax
444105:	5d                   	pop    %ebp
444106:	c2 04 00             	ret    $0x4
444109:	56                   	push   %esi
44410a:	8b f1                	mov    %ecx,%esi
44410c:	ff 36                	push   (%esi)
44410e:	e8 7b 8c 00 00       	call   0x44cd8e
444113:	83 26 00             	andl   $0x0,(%esi)
444116:	59                   	pop    %ecx
444117:	5e                   	pop    %esi
444118:	c3                   	ret
444119:	83 39 00             	cmpl   $0x0,(%ecx)
44411c:	0f 95 c0             	setne  %al
44411f:	c3                   	ret
444120:	8b 01                	mov    (%ecx),%eax
444122:	83 21 00             	andl   $0x0,(%ecx)
444125:	c3                   	ret
444126:	8b 01                	mov    (%ecx),%eax
444128:	c3                   	ret
444129:	83 39 00             	cmpl   $0x0,(%ecx)
44412c:	0f 95 c0             	setne  %al
44412f:	c3                   	ret
444130:	56                   	push   %esi
444131:	8b f1                	mov    %ecx,%esi
444133:	ff 36                	push   (%esi)
444135:	e8 54 8c 00 00       	call   0x44cd8e
44413a:	83 26 00             	andl   $0x0,(%esi)
44413d:	59                   	pop    %ecx
44413e:	5e                   	pop    %esi
44413f:	c3                   	ret
444140:	55                   	push   %ebp
444141:	8b ec                	mov    %esp,%ebp
444143:	57                   	push   %edi
444144:	8b 7d 08             	mov    0x8(%ebp),%edi
444147:	80 7f 04 00          	cmpb   $0x0,0x4(%edi)
44414b:	74 48                	je     0x444195
44414d:	8b 0f                	mov    (%edi),%ecx
44414f:	85 c9                	test   %ecx,%ecx
444151:	74 42                	je     0x444195
444153:	8d 51 01             	lea    0x1(%ecx),%edx
444156:	8a 01                	mov    (%ecx),%al
444158:	41                   	inc    %ecx
444159:	84 c0                	test   %al,%al
44415b:	75 f9                	jne    0x444156
44415d:	2b ca                	sub    %edx,%ecx
44415f:	53                   	push   %ebx
444160:	56                   	push   %esi
444161:	8d 59 01             	lea    0x1(%ecx),%ebx
444164:	53                   	push   %ebx
444165:	e8 d9 43 02 00       	call   0x468543
44416a:	8b f0                	mov    %eax,%esi
44416c:	59                   	pop    %ecx
44416d:	85 f6                	test   %esi,%esi
44416f:	74 19                	je     0x44418a
444171:	ff 37                	push   (%edi)
444173:	53                   	push   %ebx
444174:	56                   	push   %esi
444175:	e8 bc c0 02 00       	call   0x470236
44417a:	8b 45 0c             	mov    0xc(%ebp),%eax
44417d:	8b ce                	mov    %esi,%ecx
44417f:	83 c4 0c             	add    $0xc,%esp
444182:	33 f6                	xor    %esi,%esi
444184:	89 08                	mov    %ecx,(%eax)
444186:	c6 40 04 01          	movb   $0x1,0x4(%eax)
44418a:	56                   	push   %esi
44418b:	e8 fe 8b 00 00       	call   0x44cd8e
444190:	59                   	pop    %ecx
444191:	5e                   	pop    %esi
444192:	5b                   	pop    %ebx
444193:	eb 0b                	jmp    0x4441a0
444195:	8b 4d 0c             	mov    0xc(%ebp),%ecx
444198:	8b 07                	mov    (%edi),%eax
44419a:	89 01                	mov    %eax,(%ecx)
44419c:	c6 41 04 00          	movb   $0x0,0x4(%ecx)
4441a0:	5f                   	pop    %edi
4441a1:	5d                   	pop    %ebp
4441a2:	c3                   	ret
4441a3:	55                   	push   %ebp
4441a4:	8b ec                	mov    %esp,%ebp
4441a6:	56                   	push   %esi
4441a7:	8b 75 08             	mov    0x8(%ebp),%esi
4441aa:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
4441ae:	74 08                	je     0x4441b8
4441b0:	ff 36                	push   (%esi)
4441b2:	e8 d7 8b 00 00       	call   0x44cd8e
4441b7:	59                   	pop    %ecx
4441b8:	83 26 00             	andl   $0x0,(%esi)
4441bb:	c6 46 04 00          	movb   $0x0,0x4(%esi)
4441bf:	5e                   	pop    %esi
4441c0:	5d                   	pop    %ebp
4441c1:	c3                   	ret
4441c2:	55                   	push   %ebp
4441c3:	8b ec                	mov    %esp,%ebp
4441c5:	83 ec 20             	sub    $0x20,%esp
4441c8:	53                   	push   %ebx
4441c9:	8b 5d 08             	mov    0x8(%ebp),%ebx
4441cc:	56                   	push   %esi
4441cd:	57                   	push   %edi
4441ce:	6a 08                	push   $0x8
4441d0:	59                   	pop    %ecx
4441d1:	be 14 af 49 00       	mov    $0x49af14,%esi
4441d6:	8d 7d e0             	lea    -0x20(%ebp),%edi
4441d9:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4441db:	8b 7d 0c             	mov    0xc(%ebp),%edi
4441de:	85 ff                	test   %edi,%edi
4441e0:	74 1d                	je     0x4441ff
4441e2:	f6 07 10             	testb  $0x10,(%edi)
4441e5:	74 18                	je     0x4441ff
4441e7:	8b 0b                	mov    (%ebx),%ecx
4441e9:	83 e9 04             	sub    $0x4,%ecx
4441ec:	51                   	push   %ecx
4441ed:	8b 01                	mov    (%ecx),%eax
4441ef:	8b 70 20             	mov    0x20(%eax),%esi
4441f2:	8b ce                	mov    %esi,%ecx
4441f4:	8b 78 18             	mov    0x18(%eax),%edi
4441f7:	ff 15 54 43 49 00    	call   *0x494354
4441fd:	ff d6                	call   *%esi
4441ff:	89 5d f8             	mov    %ebx,-0x8(%ebp)
444202:	89 7d fc             	mov    %edi,-0x4(%ebp)
444205:	85 ff                	test   %edi,%edi
444207:	74 0c                	je     0x444215
444209:	f6 07 08             	testb  $0x8,(%edi)