443dd7:	85 c0                	test   %eax,%eax
443dd9:	74 09                	je     0x443de4
443ddb:	89 45 08             	mov    %eax,0x8(%ebp)
443dde:	5d                   	pop    %ebp
443ddf:	e9 5e d2 19 00       	jmp    0x5e1042
443de4:	33 c0                	xor    %eax,%eax
443de6:	5d                   	pop    %ebp
443de7:	c3                   	ret
443de8:	cc                   	int3
443de9:	cc                   	int3
443dea:	cc                   	int3
443deb:	cc                   	int3
443dec:	cc                   	int3
443ded:	cc                   	int3
443dee:	cc                   	int3
443def:	cc                   	int3
443df0:	55                   	push   %ebp
443df1:	8b ec                	mov    %esp,%ebp
443df3:	6a ff                	push   $0xffffffff
443df5:	68 a8 c3 64 00       	push   $0x64c3a8
443dfa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
443e00:	50                   	push   %eax
443e01:	83 ec 14             	sub    $0x14,%esp
443e04:	53                   	push   %ebx
443e05:	56                   	push   %esi
443e06:	57                   	push   %edi
443e07:	a1 d4 89 72 00       	mov    0x7289d4,%eax
443e0c:	33 c5                	xor    %ebp,%eax
443e0e:	50                   	push   %eax
443e0f:	8d 45 f4             	lea    -0xc(%ebp),%eax
443e12:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
443e18:	8b f1                	mov    %ecx,%esi
443e1a:	89 75 e0             	mov    %esi,-0x20(%ebp)
443e1d:	8b 45 08             	mov    0x8(%ebp),%eax
443e20:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
443e27:	3b 45 0c             	cmp    0xc(%ebp),%eax
443e2a:	0f 84 20 01 00 00    	je     0x443f50
443e30:	66 0f be 00          	movsbw (%eax),%ax
443e34:	8b 4e 14             	mov    0x14(%esi),%ecx
443e37:	8b 5e 10             	mov    0x10(%esi),%ebx
443e3a:	89 4d e8             	mov    %ecx,-0x18(%ebp)
443e3d:	0f b7 d0             	movzwl %ax,%edx
443e40:	89 55 f0             	mov    %edx,-0x10(%ebp)
443e43:	3b d9                	cmp    %ecx,%ebx
443e45:	73 1f                	jae    0x443e66
443e47:	8d 43 01             	lea    0x1(%ebx),%eax
443e4a:	89 46 10             	mov    %eax,0x10(%esi)
443e4d:	8b c6                	mov    %esi,%eax
443e4f:	83 f9 08             	cmp    $0x8,%ecx
443e52:	72 02                	jb     0x443e56
443e54:	8b 06                	mov    (%esi),%eax
443e56:	33 c9                	xor    %ecx,%ecx
443e58:	66 89 14 58          	mov    %dx,(%eax,%ebx,2)
443e5c:	66 89 4c 58 02       	mov    %cx,0x2(%eax,%ebx,2)
443e61:	e9 da 00 00 00       	jmp    0x443f40
443e66:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
443e6b:	2b c3                	sub    %ebx,%eax
443e6d:	83 f8 01             	cmp    $0x1,%eax
443e70:	0f 82 ee 00 00 00    	jb     0x443f64
443e76:	8d 7b 01             	lea    0x1(%ebx),%edi
443e79:	83 cf 07             	or     $0x7,%edi
443e7c:	81 ff fe ff ff 7f    	cmp    $0x7ffffffe,%edi
443e82:	76 07                	jbe    0x443e8b
443e84:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
443e89:	eb 1e                	jmp    0x443ea9
443e8b:	8b d1                	mov    %ecx,%edx
443e8d:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
443e92:	d1 ea                	shr    $1,%edx
443e94:	2b c2                	sub    %edx,%eax
443e96:	3b c8                	cmp    %eax,%ecx
443e98:	76 07                	jbe    0x443ea1
443e9a:	bf fe ff ff 7f       	mov    $0x7ffffffe,%edi
443e9f:	eb 08                	jmp    0x443ea9
443ea1:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
443ea4:	3b f8                	cmp    %eax,%edi
443ea6:	0f 42 f8             	cmovb  %eax,%edi
443ea9:	33 c9                	xor    %ecx,%ecx
443eab:	8b c7                	mov    %edi,%eax
443ead:	83 c0 01             	add    $0x1,%eax
443eb0:	0f 92 c1             	setb   %cl
443eb3:	f7 d9                	neg    %ecx
443eb5:	0b c8                	or     %eax,%ecx
443eb7:	51                   	push   %ecx
443eb8:	8b ce                	mov    %esi,%ecx
443eba:	e8 31 55 ff ff       	call   0x4393f0
443ebf:	8d 4b 01             	lea    0x1(%ebx),%ecx
443ec2:	89 7e 14             	mov    %edi,0x14(%esi)
443ec5:	89 4e 10             	mov    %ecx,0x10(%esi)
443ec8:	8d 0c 1b             	lea    (%ebx,%ebx,1),%ecx
443ecb:	8b 5d e8             	mov    -0x18(%ebp),%ebx
443ece:	89 45 ec             	mov    %eax,-0x14(%ebp)
443ed1:	8d 3c 01             	lea    (%ecx,%eax,1),%edi
443ed4:	89 7d e4             	mov    %edi,-0x1c(%ebp)
443ed7:	51                   	push   %ecx
443ed8:	83 fb 08             	cmp    $0x8,%ebx
443edb:	72 48                	jb     0x443f25
443edd:	8b 3e                	mov    (%esi),%edi
443edf:	57                   	push   %edi
443ee0:	50                   	push   %eax
443ee1:	e8 1a f0 19 00       	call   0x5e2f00
443ee6:	8b 45 e4             	mov    -0x1c(%ebp),%eax
443ee9:	8d 1c 5d 02 00 00 00 	lea    0x2(,%ebx,2),%ebx
443ef0:	8b 4d f0             	mov    -0x10(%ebp),%ecx
443ef3:	83 c4 0c             	add    $0xc,%esp
443ef6:	66 89 08             	mov    %cx,(%eax)
443ef9:	33 c9                	xor    %ecx,%ecx
443efb:	66 89 48 02          	mov    %cx,0x2(%eax)
443eff:	81 fb 00 10 00 00    	cmp    $0x1000,%ebx
443f05:	72 12                	jb     0x443f19
443f07:	8b 4f fc             	mov    -0x4(%edi),%ecx
443f0a:	83 c3 23             	add    $0x23,%ebx
443f0d:	2b f9                	sub    %ecx,%edi
443f0f:	8d 47 fc             	lea    -0x4(%edi),%eax
443f12:	83 f8 1f             	cmp    $0x1f,%eax
443f15:	77 52                	ja     0x443f69
443f17:	8b f9                	mov    %ecx,%edi
443f19:	53                   	push   %ebx
443f1a:	57                   	push   %edi
443f1b:	e8 52 d1 19 00       	call   0x5e1072
443f20:	83 c4 08             	add    $0x8,%esp
443f23:	eb 16                	jmp    0x443f3b
443f25:	56                   	push   %esi
443f26:	50                   	push   %eax
443f27:	e8 d4 ef 19 00       	call   0x5e2f00
443f2c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
443f2f:	83 c4 0c             	add    $0xc,%esp
443f32:	33 c0                	xor    %eax,%eax
443f34:	66 89 0f             	mov    %cx,(%edi)
443f37:	66 89 47 02          	mov    %ax,0x2(%edi)
443f3b:	8b 45 ec             	mov    -0x14(%ebp),%eax
443f3e:	89 06                	mov    %eax,(%esi)
443f40:	8b 45 08             	mov    0x8(%ebp),%eax
443f43:	40                   	inc    %eax
443f44:	89 45 08             	mov    %eax,0x8(%ebp)
443f47:	3b 45 0c             	cmp    0xc(%ebp),%eax
443f4a:	0f 85 e0 fe ff ff    	jne    0x443e30
443f50:	8b 4d f4             	mov    -0xc(%ebp),%ecx
443f53:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
443f5a:	59                   	pop    %ecx
443f5b:	5f                   	pop    %edi
443f5c:	5e                   	pop    %esi
443f5d:	5b                   	pop    %ebx
443f5e:	8b e5                	mov    %ebp,%esp
443f60:	5d                   	pop    %ebp
443f61:	c2 0c 00             	ret    $0xc
443f64:	e8 c7 10 00 00       	call   0x445030
443f69:	e8 c1 8f 1a 00       	call   0x5ecf2f
443f6e:	cc                   	int3
443f6f:	cc                   	int3
443f70:	55                   	push   %ebp
443f71:	8b ec                	mov    %esp,%ebp
443f73:	6a ff                	push   $0xffffffff
443f75:	68 d8 c3 64 00       	push   $0x64c3d8
443f7a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
443f80:	50                   	push   %eax
443f81:	83 ec 14             	sub    $0x14,%esp
443f84:	53                   	push   %ebx
443f85:	56                   	push   %esi
443f86:	57                   	push   %edi
443f87:	a1 d4 89 72 00       	mov    0x7289d4,%eax
443f8c:	33 c5                	xor    %ebp,%eax
443f8e:	50                   	push   %eax
443f8f:	8d 45 f4             	lea    -0xc(%ebp),%eax
443f92:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
443f98:	8b f1                	mov    %ecx,%esi
443f9a:	89 75 e0             	mov    %esi,-0x20(%ebp)
443f9d:	8b 45 08             	mov    0x8(%ebp),%eax
443fa0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
443fa7:	3b 45 0c             	cmp    0xc(%ebp),%eax
443faa:	0f 84 4f 01 00 00    	je     0x4440ff
443fb0:	8b 5e 10             	mov    0x10(%esi),%ebx
443fb3:	8b 4e 14             	mov    0x14(%esi),%ecx
443fb6:	8a 10                	mov    (%eax),%dl
443fb8:	88 55 f3             	mov    %dl,-0xd(%ebp)
443fbb:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
443fbe:	89 4d e8             	mov    %ecx,-0x18(%ebp)
443fc1:	3b d9                	cmp    %ecx,%ebx
443fc3:	73 1c                	jae    0x443fe1
443fc5:	8d 43 01             	lea    0x1(%ebx),%eax
443fc8:	89 46 10             	mov    %eax,0x10(%esi)
443fcb:	8b c6                	mov    %esi,%eax
443fcd:	83 f9 10             	cmp    $0x10,%ecx
443fd0:	72 02                	jb     0x443fd4
443fd2:	8b 06                	mov    (%esi),%eax
443fd4:	88 14 18             	mov    %dl,(%eax,%ebx,1)
443fd7:	c6 44 18 01 00       	movb   $0x0,0x1(%eax,%ebx,1)
443fdc:	e9 0c 01 00 00       	jmp    0x4440ed
443fe1:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
443fe6:	2b c3                	sub    %ebx,%eax
443fe8:	83 f8 01             	cmp    $0x1,%eax
443feb:	0f 82 22 01 00 00    	jb     0x444113
443ff1:	8d 7b 01             	lea    0x1(%ebx),%edi
443ff4:	83 cf 0f             	or     $0xf,%edi
443ff7:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
443ffd:	76 07                	jbe    0x444006
443fff:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
444004:	eb 1e                	jmp    0x444024
444006:	8b d1                	mov    %ecx,%edx
444008:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
44400d:	d1 ea                	shr    $1,%edx
44400f:	2b c2                	sub    %edx,%eax
444011:	3b c8                	cmp    %eax,%ecx
444013:	76 07                	jbe    0x44401c
444015:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
44401a:	eb 08                	jmp    0x444024
44401c:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
44401f:	3b f8                	cmp    %eax,%edi
444021:	0f 42 f8             	cmovb  %eax,%edi
444024:	33 c9                	xor    %ecx,%ecx
444026:	89 7d ec             	mov    %edi,-0x14(%ebp)
444029:	8b c7                	mov    %edi,%eax
44402b:	83 c0 01             	add    $0x1,%eax
44402e:	0f 92 c1             	setb   %cl
444031:	f7 d9                	neg    %ecx
444033:	0b c8                	or     %eax,%ecx
444035:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
44403b:	72 27                	jb     0x444064
44403d:	8d 41 23             	lea    0x23(%ecx),%eax
444040:	3b c1                	cmp    %ecx,%eax
444042:	0f 86 d0 00 00 00    	jbe    0x444118
444048:	50                   	push   %eax
444049:	e8 f4 cf 19 00       	call   0x5e1042
44404e:	83 c4 04             	add    $0x4,%esp
444051:	85 c0                	test   %eax,%eax
444053:	0f 84 c4 00 00 00    	je     0x44411d
444059:	8d 78 23             	lea    0x23(%eax),%edi
44405c:	83 e7 e0             	and    $0xffffffe0,%edi
44405f:	89 47 fc             	mov    %eax,-0x4(%edi)
444062:	eb 13                	jmp    0x444077
444064:	85 c9                	test   %ecx,%ecx
444066:	74 0d                	je     0x444075
444068:	51                   	push   %ecx
444069:	e8 d4 cf 19 00       	call   0x5e1042
44406e:	83 c4 04             	add    $0x4,%esp
444071:	8b f8                	mov    %eax,%edi
444073:	eb 02                	jmp    0x444077
444075:	33 ff                	xor    %edi,%edi
444077:	83 7d e8 10          	cmpl   $0x10,-0x18(%ebp)
44407b:	8d 43 01             	lea    0x1(%ebx),%eax
44407e:	89 46 10             	mov    %eax,0x10(%esi)
444081:	8b 45 ec             	mov    -0x14(%ebp),%eax
444084:	89 46 14             	mov    %eax,0x14(%esi)
444087:	8d 04 1f             	lea    (%edi,%ebx,1),%eax
44408a:	89 45 ec             	mov    %eax,-0x14(%ebp)
44408d:	72 45                	jb     0x4440d4
44408f:	ff 75 e4             	push   -0x1c(%ebp)
444092:	8b 1e                	mov    (%esi),%ebx
444094:	53                   	push   %ebx
444095:	57                   	push   %edi
444096:	e8 65 ee 19 00       	call   0x5e2f00
44409b:	8b 45 ec             	mov    -0x14(%ebp),%eax
44409e:	83 c4 0c             	add    $0xc,%esp
4440a1:	8a 4d f3             	mov    -0xd(%ebp),%cl
4440a4:	88 08                	mov    %cl,(%eax)
4440a6:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4440a9:	41                   	inc    %ecx
4440aa:	c6 40 01 00          	movb   $0x0,0x1(%eax)
4440ae:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4440b4:	72 12                	jb     0x4440c8
4440b6:	8b 53 fc             	mov    -0x4(%ebx),%edx
4440b9:	83 c1 23             	add    $0x23,%ecx
4440bc:	2b da                	sub    %edx,%ebx
4440be:	8d 43 fc             	lea    -0x4(%ebx),%eax
4440c1:	83 f8 1f             	cmp    $0x1f,%eax
4440c4:	77 57                	ja     0x44411d
4440c6:	8b da                	mov    %edx,%ebx
4440c8:	51                   	push   %ecx
4440c9:	53                   	push   %ebx
4440ca:	e8 a3 cf 19 00       	call   0x5e1072
4440cf:	83 c4 08             	add    $0x8,%esp
4440d2:	eb 17                	jmp    0x4440eb
4440d4:	53                   	push   %ebx
4440d5:	56                   	push   %esi
4440d6:	57                   	push   %edi
4440d7:	e8 24 ee 19 00       	call   0x5e2f00
4440dc:	8a 4d f3             	mov    -0xd(%ebp),%cl
4440df:	8d 04 1f             	lea    (%edi,%ebx,1),%eax
4440e2:	83 c4 0c             	add    $0xc,%esp
4440e5:	88 08                	mov    %cl,(%eax)
4440e7:	c6 40 01 00          	movb   $0x0,0x1(%eax)
4440eb:	89 3e                	mov    %edi,(%esi)
4440ed:	8b 45 08             	mov    0x8(%ebp),%eax
4440f0:	83 c0 02             	add    $0x2,%eax
4440f3:	89 45 08             	mov    %eax,0x8(%ebp)
4440f6:	3b 45 0c             	cmp    0xc(%ebp),%eax
4440f9:	0f 85 b1 fe ff ff    	jne    0x443fb0
4440ff:	8b 4d f4             	mov    -0xc(%ebp),%ecx
444102:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
444109:	59                   	pop    %ecx
44410a:	5f                   	pop    %edi
44410b:	5e                   	pop    %esi
44410c:	5b                   	pop    %ebx
44410d:	8b e5                	mov    %ebp,%esp
44410f:	5d                   	pop    %ebp
444110:	c2 0c 00             	ret    $0xc
444113:	e8 18 0f 00 00       	call   0x445030
444118:	e8 c3 0d 00 00       	call   0x444ee0
44411d:	e8 0d 8e 1a 00       	call   0x5ecf2f
444122:	cc                   	int3
444123:	cc                   	int3
444124:	cc                   	int3
444125:	cc                   	int3
444126:	cc                   	int3
444127:	cc                   	int3
444128:	cc                   	int3
444129:	cc                   	int3
44412a:	cc                   	int3
44412b:	cc                   	int3
44412c:	cc                   	int3
44412d:	cc                   	int3
44412e:	cc                   	int3
44412f:	cc                   	int3
444130:	55                   	push   %ebp
444131:	8b ec                	mov    %esp,%ebp
444133:	83 ec 14             	sub    $0x14,%esp
444136:	8b 55 08             	mov    0x8(%ebp),%edx
444139:	56                   	push   %esi
44413a:	8b 75 0c             	mov    0xc(%ebp),%esi
44413d:	57                   	push   %edi
44413e:	8b f9                	mov    %ecx,%edi
444140:	89 75 ec             	mov    %esi,-0x14(%ebp)
444143:	2b f2                	sub    %edx,%esi
444145:	89 55 f4             	mov    %edx,-0xc(%ebp)
444148:	d1 fe                	sar    $1,%esi
44414a:	8b 57 10             	mov    0x10(%edi),%edx
44414d:	89 55 f8             	mov    %edx,-0x8(%ebp)
444150:	3b d6                	cmp    %esi,%edx
444152:	0f 87 e9 00 00 00    	ja     0x444241
444158:	53                   	push   %ebx
444159:	8b 5f 14             	mov    0x14(%edi),%ebx
44415c:	3b de                	cmp    %esi,%ebx
44415e:	0f 84 dc 00 00 00    	je     0x444240
444164:	0f 83 c7 00 00 00    	jae    0x444231
44416a:	8b ce                	mov    %esi,%ecx
44416c:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
444171:	2b ca                	sub    %edx,%ecx
444173:	2b c2                	sub    %edx,%eax
444175:	3b c1                	cmp    %ecx,%eax
444177:	0f 82 dc 00 00 00    	jb     0x444259
44417d:	8b d6                	mov    %esi,%edx
44417f:	83 ca 0f             	or     $0xf,%edx
444182:	81 fa ff ff ff 7f    	cmp    $0x7fffffff,%edx
444188:	76 07                	jbe    0x444191
44418a:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
44418f:	eb 1e                	jmp    0x4441af
444191:	8b cb                	mov    %ebx,%ecx
444193:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
444198:	d1 e9                	shr    $1,%ecx
44419a:	2b c1                	sub    %ecx,%eax
44419c:	3b d8                	cmp    %eax,%ebx