438f2f:	0f b7 c1             	movzwl %cx,%eax
438f32:	39 45 0c             	cmp    %eax,0xc(%ebp)
438f35:	74 09                	je     0x438f40
438f37:	42                   	inc    %edx
438f38:	0f b6 0a             	movzbl (%edx),%ecx
438f3b:	66 85 c9             	test   %cx,%cx
438f3e:	75 c9                	jne    0x438f09
438f40:	0f b7 c1             	movzwl %cx,%eax
438f43:	39 45 0c             	cmp    %eax,0xc(%ebp)
438f46:	75 02                	jne    0x438f4a
438f48:	8b f2                	mov    %edx,%esi
438f4a:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
438f4e:	74 07                	je     0x438f57
438f50:	8b 4d f8             	mov    -0x8(%ebp),%ecx
438f53:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
438f57:	5f                   	pop    %edi
438f58:	8b c6                	mov    %esi,%eax
438f5a:	5e                   	pop    %esi
438f5b:	c9                   	leave
438f5c:	c3                   	ret
438f5d:	55                   	push   %ebp
438f5e:	8b ec                	mov    %esp,%ebp
438f60:	83 ec 10             	sub    $0x10,%esp
438f63:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
438f67:	0f 84 9b 00 00 00    	je     0x439008
438f6d:	53                   	push   %ebx
438f6e:	56                   	push   %esi
438f6f:	57                   	push   %edi
438f70:	ff 75 14             	push   0x14(%ebp)
438f73:	8d 4d f0             	lea    -0x10(%ebp),%ecx
438f76:	e8 a4 7f fe ff       	call   0x420f1f
438f7b:	8b 7d 08             	mov    0x8(%ebp),%edi
438f7e:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
438f83:	85 ff                	test   %edi,%edi
438f85:	74 0e                	je     0x438f95
438f87:	8b 5d 0c             	mov    0xc(%ebp),%ebx
438f8a:	85 db                	test   %ebx,%ebx
438f8c:	74 07                	je     0x438f95
438f8e:	8b 4d 10             	mov    0x10(%ebp),%ecx
438f91:	3b ce                	cmp    %esi,%ecx
438f93:	76 12                	jbe    0x438fa7
438f95:	e8 74 ec fe ff       	call   0x427c0e
438f9a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
438fa0:	e8 6b de fe ff       	call   0x426e10
438fa5:	eb 4d                	jmp    0x438ff4
438fa7:	8b 45 f0             	mov    -0x10(%ebp),%eax
438faa:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
438fb1:	75 0f                	jne    0x438fc2
438fb3:	51                   	push   %ecx
438fb4:	53                   	push   %ebx
438fb5:	57                   	push   %edi
438fb6:	e8 85 01 00 00       	call   0x439140
438fbb:	83 c4 0c             	add    $0xc,%esp
438fbe:	8b f0                	mov    %eax,%esi
438fc0:	eb 32                	jmp    0x438ff4
438fc2:	2b fb                	sub    %ebx,%edi
438fc4:	0f b6 04 1f          	movzbl (%edi,%ebx,1),%eax
438fc8:	8d 4d f0             	lea    -0x10(%ebp),%ecx
438fcb:	51                   	push   %ecx
438fcc:	50                   	push   %eax
438fcd:	e8 1b 9f fe ff       	call   0x422eed
438fd2:	8b f0                	mov    %eax,%esi
438fd4:	0f b6 03             	movzbl (%ebx),%eax
438fd7:	8d 4d f0             	lea    -0x10(%ebp),%ecx
438fda:	51                   	push   %ecx
438fdb:	50                   	push   %eax
438fdc:	e8 0c 9f fe ff       	call   0x422eed
438fe1:	83 c4 10             	add    $0x10,%esp
438fe4:	43                   	inc    %ebx
438fe5:	ff 4d 10             	decl   0x10(%ebp)
438fe8:	74 08                	je     0x438ff2
438fea:	85 f6                	test   %esi,%esi
438fec:	74 04                	je     0x438ff2
438fee:	3b f0                	cmp    %eax,%esi
438ff0:	74 d2                	je     0x438fc4
438ff2:	2b f0                	sub    %eax,%esi
438ff4:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
438ff8:	74 07                	je     0x439001
438ffa:	8b 4d f8             	mov    -0x8(%ebp),%ecx
438ffd:	83 61 70 fd          	andl   $0xfffffffd,0x70(%ecx)
439001:	5f                   	pop    %edi
439002:	8b c6                	mov    %esi,%eax
439004:	5e                   	pop    %esi
439005:	5b                   	pop    %ebx
439006:	c9                   	leave
439007:	c3                   	ret
439008:	33 c0                	xor    %eax,%eax
43900a:	c9                   	leave
43900b:	c3                   	ret
43900c:	cc                   	int3
43900d:	cc                   	int3
43900e:	cc                   	int3
43900f:	cc                   	int3
439010:	83 3d 54 01 4c 00 01 	cmpl   $0x1,0x4c0154
439017:	72 5f                	jb     0x439078
439019:	0f b6 44 24 08       	movzbl 0x8(%esp),%eax
43901e:	8b d0                	mov    %eax,%edx
439020:	c1 e0 08             	shl    $0x8,%eax
439023:	0b d0                	or     %eax,%edx
439025:	66 0f 6e da          	movd   %edx,%xmm3
439029:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
43902e:	0f 16 db             	movlhps %xmm3,%xmm3
439031:	8b 54 24 04          	mov    0x4(%esp),%edx
439035:	b9 0f 00 00 00       	mov    $0xf,%ecx
43903a:	83 c8 ff             	or     $0xffffffff,%eax
43903d:	23 ca                	and    %edx,%ecx
43903f:	d3 e0                	shl    %cl,%eax
439041:	2b d1                	sub    %ecx,%edx
439043:	f3 0f 6f 0a          	movdqu (%edx),%xmm1
439047:	66 0f ef d2          	pxor   %xmm2,%xmm2
43904b:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
43904f:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
439053:	66 0f eb d1          	por    %xmm1,%xmm2
439057:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
43905b:	23 c8                	and    %eax,%ecx
43905d:	75 08                	jne    0x439067
43905f:	83 c8 ff             	or     $0xffffffff,%eax
439062:	83 c2 10             	add    $0x10,%edx
439065:	eb dc                	jmp    0x439043
439067:	0f bc c1             	bsf    %ecx,%eax
43906a:	03 c2                	add    %edx,%eax
43906c:	66 0f 7e da          	movd   %xmm3,%edx
439070:	33 c9                	xor    %ecx,%ecx
439072:	3a 10                	cmp    (%eax),%dl
439074:	0f 45 c1             	cmovne %ecx,%eax
439077:	c3                   	ret
439078:	33 c0                	xor    %eax,%eax
43907a:	8a 44 24 08          	mov    0x8(%esp),%al
43907e:	53                   	push   %ebx
43907f:	8b d8                	mov    %eax,%ebx
439081:	c1 e0 08             	shl    $0x8,%eax
439084:	8b 54 24 08          	mov    0x8(%esp),%edx
439088:	f7 c2 03 00 00 00    	test   $0x3,%edx
43908e:	74 15                	je     0x4390a5
439090:	8a 0a                	mov    (%edx),%cl
439092:	83 c2 01             	add    $0x1,%edx
439095:	3a cb                	cmp    %bl,%cl
439097:	74 59                	je     0x4390f2
439099:	84 c9                	test   %cl,%cl
43909b:	74 51                	je     0x4390ee
43909d:	f7 c2 03 00 00 00    	test   $0x3,%edx
4390a3:	75 eb                	jne    0x439090
4390a5:	0b d8                	or     %eax,%ebx
4390a7:	57                   	push   %edi
4390a8:	8b c3                	mov    %ebx,%eax
4390aa:	c1 e3 10             	shl    $0x10,%ebx
4390ad:	56                   	push   %esi
4390ae:	0b d8                	or     %eax,%ebx
4390b0:	8b 0a                	mov    (%edx),%ecx
4390b2:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
4390b7:	8b c1                	mov    %ecx,%eax
4390b9:	8b f7                	mov    %edi,%esi
4390bb:	33 cb                	xor    %ebx,%ecx
4390bd:	03 f0                	add    %eax,%esi
4390bf:	03 f9                	add    %ecx,%edi
4390c1:	83 f1 ff             	xor    $0xffffffff,%ecx
4390c4:	83 f0 ff             	xor    $0xffffffff,%eax
4390c7:	33 cf                	xor    %edi,%ecx
4390c9:	33 c6                	xor    %esi,%eax
4390cb:	83 c2 04             	add    $0x4,%edx
4390ce:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
4390d4:	75 21                	jne    0x4390f7
4390d6:	25 00 01 01 81       	and    $0x81010100,%eax
4390db:	74 d3                	je     0x4390b0
4390dd:	25 00 01 01 01       	and    $0x1010100,%eax
4390e2:	75 08                	jne    0x4390ec
4390e4:	81 e6 00 00 00 80    	and    $0x80000000,%esi
4390ea:	75 c4                	jne    0x4390b0
4390ec:	5e                   	pop    %esi
4390ed:	5f                   	pop    %edi
4390ee:	5b                   	pop    %ebx
4390ef:	33 c0                	xor    %eax,%eax
4390f1:	c3                   	ret
4390f2:	8d 42 ff             	lea    -0x1(%edx),%eax
4390f5:	5b                   	pop    %ebx
4390f6:	c3                   	ret
4390f7:	8b 42 fc             	mov    -0x4(%edx),%eax
4390fa:	3a c3                	cmp    %bl,%al
4390fc:	74 36                	je     0x439134
4390fe:	84 c0                	test   %al,%al
439100:	74 ea                	je     0x4390ec
439102:	3a e3                	cmp    %bl,%ah
439104:	74 27                	je     0x43912d
439106:	84 e4                	test   %ah,%ah
439108:	74 e2                	je     0x4390ec
43910a:	c1 e8 10             	shr    $0x10,%eax
43910d:	3a c3                	cmp    %bl,%al
43910f:	74 15                	je     0x439126
439111:	84 c0                	test   %al,%al
439113:	74 d7                	je     0x4390ec
439115:	3a e3                	cmp    %bl,%ah
439117:	74 06                	je     0x43911f
439119:	84 e4                	test   %ah,%ah
43911b:	74 cf                	je     0x4390ec
43911d:	eb 91                	jmp    0x4390b0
43911f:	5e                   	pop    %esi
439120:	5f                   	pop    %edi
439121:	8d 42 ff             	lea    -0x1(%edx),%eax
439124:	5b                   	pop    %ebx
439125:	c3                   	ret
439126:	8d 42 fe             	lea    -0x2(%edx),%eax
439129:	5e                   	pop    %esi
43912a:	5f                   	pop    %edi
43912b:	5b                   	pop    %ebx
43912c:	c3                   	ret
43912d:	8d 42 fd             	lea    -0x3(%edx),%eax
439130:	5e                   	pop    %esi
439131:	5f                   	pop    %edi
439132:	5b                   	pop    %ebx
439133:	c3                   	ret
439134:	8d 42 fc             	lea    -0x4(%edx),%eax
439137:	5e                   	pop    %esi
439138:	5f                   	pop    %edi
439139:	5b                   	pop    %ebx
43913a:	c3                   	ret
43913b:	cc                   	int3
43913c:	cc                   	int3
43913d:	cc                   	int3
43913e:	cc                   	int3
43913f:	cc                   	int3
439140:	55                   	push   %ebp
439141:	8b ec                	mov    %esp,%ebp
439143:	57                   	push   %edi
439144:	56                   	push   %esi
439145:	53                   	push   %ebx
439146:	8b 4d 10             	mov    0x10(%ebp),%ecx
439149:	0b c9                	or     %ecx,%ecx
43914b:	74 4d                	je     0x43919a
43914d:	8b 75 08             	mov    0x8(%ebp),%esi
439150:	8b 7d 0c             	mov    0xc(%ebp),%edi
439153:	b7 41                	mov    $0x41,%bh
439155:	b3 5a                	mov    $0x5a,%bl
439157:	b6 20                	mov    $0x20,%dh
439159:	8d 49 00             	lea    0x0(%ecx),%ecx
43915c:	8a 26                	mov    (%esi),%ah
43915e:	0a e4                	or     %ah,%ah
439160:	8a 07                	mov    (%edi),%al
439162:	74 27                	je     0x43918b
439164:	0a c0                	or     %al,%al
439166:	74 23                	je     0x43918b
439168:	83 c6 01             	add    $0x1,%esi
43916b:	83 c7 01             	add    $0x1,%edi
43916e:	3a e7                	cmp    %bh,%ah
439170:	72 06                	jb     0x439178
439172:	3a e3                	cmp    %bl,%ah
439174:	77 02                	ja     0x439178
439176:	02 e6                	add    %dh,%ah
439178:	3a c7                	cmp    %bh,%al
43917a:	72 06                	jb     0x439182
43917c:	3a c3                	cmp    %bl,%al
43917e:	77 02                	ja     0x439182
439180:	02 c6                	add    %dh,%al
439182:	3a e0                	cmp    %al,%ah
439184:	75 0b                	jne    0x439191
439186:	83 e9 01             	sub    $0x1,%ecx
439189:	75 d1                	jne    0x43915c
43918b:	33 c9                	xor    %ecx,%ecx
43918d:	3a e0                	cmp    %al,%ah
43918f:	74 09                	je     0x43919a
439191:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
439196:	72 02                	jb     0x43919a
439198:	f7 d9                	neg    %ecx
43919a:	8b c1                	mov    %ecx,%eax
43919c:	5b                   	pop    %ebx
43919d:	5e                   	pop    %esi
43919e:	5f                   	pop    %edi
43919f:	c9                   	leave
4391a0:	c3                   	ret
4391a1:	cc                   	int3
4391a2:	ff 25 60 d3 48 00    	jmp    *0x48d360
4391a8:	ff 25 ac d3 48 00    	jmp    *0x48d3ac
4391ae:	55                   	push   %ebp
4391af:	8b ec                	mov    %esp,%ebp
4391b1:	56                   	push   %esi
4391b2:	8b f1                	mov    %ecx,%esi
4391b4:	56                   	push   %esi
4391b5:	ff 15 64 d4 48 00    	call   *0x48d464
4391bb:	ff 75 08             	push   0x8(%ebp)
4391be:	56                   	push   %esi
4391bf:	ff 15 48 d4 48 00    	call   *0x48d448
4391c5:	8b c6                	mov    %esi,%eax
4391c7:	5e                   	pop    %esi
4391c8:	5d                   	pop    %ebp
4391c9:	c2 04 00             	ret    $0x4
4391cc:	55                   	push   %ebp
4391cd:	8b ec                	mov    %esp,%ebp
4391cf:	83 ec 30             	sub    $0x30,%esp
4391d2:	53                   	push   %ebx
4391d3:	56                   	push   %esi
4391d4:	57                   	push   %edi
4391d5:	8b f1                	mov    %ecx,%esi
4391d7:	33 db                	xor    %ebx,%ebx
4391d9:	56                   	push   %esi
4391da:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4391dd:	ff 15 64 d4 48 00    	call   *0x48d464
4391e3:	8b 7d 08             	mov    0x8(%ebp),%edi
4391e6:	89 5e 08             	mov    %ebx,0x8(%esi)
4391e9:	89 5e 0c             	mov    %ebx,0xc(%esi)
4391ec:	8b 47 0c             	mov    0xc(%edi),%eax
4391ef:	8d 48 ff             	lea    -0x1(%eax),%ecx
4391f2:	83 f9 0e             	cmp    $0xe,%ecx
4391f5:	0f 87 fb 01 00 00    	ja     0x4393f6
4391fb:	ff 24 8d 00 94 43 00 	jmp    *0x439400(,%ecx,4)
439202:	6a 0b                	push   $0xb
439204:	58                   	pop    %eax
439205:	8b cf                	mov    %edi,%ecx
439207:	66 89 06             	mov    %ax,(%esi)
43920a:	e8 17 4b fe ff       	call   0x41dd26
43920f:	84 c0                	test   %al,%al
439211:	74 05                	je     0x439218
439213:	83 c8 ff             	or     $0xffffffff,%eax
439216:	eb 02                	jmp    0x43921a
439218:	33 c0                	xor    %eax,%eax
43921a:	66 89 46 08          	mov    %ax,0x8(%esi)
43921e:	e9 d3 01 00 00       	jmp    0x4393f6
439223:	6a 03                	push   $0x3
439225:	58                   	pop    %eax
439226:	8b cf                	mov    %edi,%ecx
439228:	66 89 06             	mov    %ax,(%esi)
43922b:	e8 56 40 fd ff       	call   0x40d286
439230:	e9 fb 00 00 00       	jmp    0x439330
439235:	6a 05                	push   $0x5
439237:	58                   	pop    %eax
439238:	8b cf                	mov    %edi,%ecx
43923a:	66 89 06             	mov    %ax,(%esi)
43923d:	e8 8e 9a fd ff       	call   0x412cd0
439242:	dd 5e 08             	fstpl  0x8(%esi)
439245:	e9 ac 01 00 00       	jmp    0x4393f6
43924a:	6a 14                	push   $0x14
43924c:	58                   	pop    %eax
43924d:	8b cf                	mov    %edi,%ecx
43924f:	66 89 06             	mov    %ax,(%esi)
439252:	e8 3c 3d fd ff       	call   0x40cf93
439257:	89 46 08             	mov    %eax,0x8(%esi)
43925a:	89 56 0c             	mov    %edx,0xc(%esi)
43925d:	e9 94 01 00 00       	jmp    0x4393f6
439262:	6a 13                	push   $0x13
439264:	58                   	pop    %eax
439265:	8b cf                	mov    %edi,%ecx
439267:	66 89 06             	mov    %ax,(%esi)
43926a:	e8 08 23 01 00       	call   0x44b577
43926f:	e9 bc 00 00 00       	jmp    0x439330
439274:	6a 08                	push   $0x8
439276:	58                   	pop    %eax
439277:	8b cf                	mov    %edi,%ecx
439279:	66 89 06             	mov    %ax,(%esi)
43927c:	e8 eb 00 fd ff       	call   0x40936c
439281:	8b 47 08             	mov    0x8(%edi),%eax
439284:	ff 30                	push   (%eax)
439286:	ff 15 2c d4 48 00    	call   *0x48d42c