443e6f:	4f                   	dec    %edi
443e70:	75 af                	jne    0x443e21
443e72:	83 7d f4 01          	cmpl   $0x1,-0xc(%ebp)
443e76:	74 0d                	je     0x443e85
443e78:	8b d3                	mov    %ebx,%edx
443e7a:	8b 45 fc             	mov    -0x4(%ebp),%eax
443e7d:	8b 08                	mov    (%eax),%ecx
443e7f:	ff 91 b8 00 00 00    	call   *0xb8(%ecx)
443e85:	8b 45 f0             	mov    -0x10(%ebp),%eax
443e88:	50                   	push   %eax
443e89:	53                   	push   %ebx
443e8a:	e8 dd 24 fc ff       	call   0x40636c
443e8f:	33 c9                	xor    %ecx,%ecx
443e91:	8b d3                	mov    %ebx,%edx
443e93:	8b 45 fc             	mov    -0x4(%ebp),%eax
443e96:	e8 61 00 00 00       	call   0x443efc
443e9b:	33 c0                	xor    %eax,%eax
443e9d:	5a                   	pop    %edx
443e9e:	59                   	pop    %ecx
443e9f:	59                   	pop    %ecx
443ea0:	64 89 10             	mov    %edx,%fs:(%eax)
443ea3:	68 cb 3e 44 00       	push   $0x443ecb
443ea8:	8b 45 f8             	mov    -0x8(%ebp),%eax
443eab:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
443eaf:	75 12                	jne    0x443ec3
443eb1:	8d 45 b0             	lea    -0x50(%ebp),%eax
443eb4:	50                   	push   %eax
443eb5:	8b 45 fc             	mov    -0x4(%ebp),%eax
443eb8:	e8 33 22 00 00       	call   0x4460f0
443ebd:	50                   	push   %eax
443ebe:	e8 61 26 fc ff       	call   0x406524
443ec3:	c3                   	ret
443ec4:	e9 d3 fa fb ff       	jmp    0x40399c
443ec9:	eb dd                	jmp    0x443ea8
443ecb:	5f                   	pop    %edi
443ecc:	5e                   	pop    %esi
443ecd:	5b                   	pop    %ebx
443ece:	8b e5                	mov    %ebp,%esp
443ed0:	5d                   	pop    %ebp
443ed1:	c3                   	ret
443ed2:	8b c0                	mov    %eax,%eax
443ed4:	83 c4 f0             	add    $0xfffffff0,%esp
443ed7:	c7 04 24 0f 00 00 00 	movl   $0xf,(%esp)
443ede:	89 54 24 04          	mov    %edx,0x4(%esp)
443ee2:	33 d2                	xor    %edx,%edx
443ee4:	89 54 24 08          	mov    %edx,0x8(%esp)
443ee8:	33 d2                	xor    %edx,%edx
443eea:	89 54 24 0c          	mov    %edx,0xc(%esp)
443eee:	8b d4                	mov    %esp,%edx
443ef0:	8b 08                	mov    (%eax),%ecx
443ef2:	ff 51 f0             	call   *-0x10(%ecx)
443ef5:	83 c4 10             	add    $0x10,%esp
443ef8:	c3                   	ret
443ef9:	8d 40 00             	lea    0x0(%eax),%eax
443efc:	53                   	push   %ebx
443efd:	56                   	push   %esi
443efe:	57                   	push   %edi
443eff:	55                   	push   %ebp
443f00:	83 c4 e0             	add    $0xffffffe0,%esp
443f03:	8b d9                	mov    %ecx,%ebx
443f05:	8b ea                	mov    %edx,%ebp
443f07:	8b f0                	mov    %eax,%esi
443f09:	80 be a8 01 00 00 00 	cmpb   $0x0,0x1a8(%esi)
443f10:	74 1f                	je     0x443f31
443f12:	80 be a7 01 00 00 00 	cmpb   $0x0,0x1a7(%esi)
443f19:	74 16                	je     0x443f31
443f1b:	83 be 7c 01 00 00 00 	cmpl   $0x0,0x17c(%esi)
443f22:	74 0d                	je     0x443f31
443f24:	8b 86 7c 01 00 00    	mov    0x17c(%esi),%eax
443f2a:	8b d5                	mov    %ebp,%edx
443f2c:	8b 08                	mov    (%eax),%ecx
443f2e:	ff 51 20             	call   *0x20(%ecx)
443f31:	8b 86 98 01 00 00    	mov    0x198(%esi),%eax
443f37:	85 c0                	test   %eax,%eax
443f39:	0f 84 df 00 00 00    	je     0x44401e
443f3f:	33 ff                	xor    %edi,%edi
443f41:	85 db                	test   %ebx,%ebx
443f43:	74 0f                	je     0x443f54
443f45:	8b d3                	mov    %ebx,%edx
443f47:	e8 8c fe fc ff       	call   0x413dd8
443f4c:	8b f8                	mov    %eax,%edi
443f4e:	85 ff                	test   %edi,%edi
443f50:	7d 02                	jge    0x443f54
443f52:	33 ff                	xor    %edi,%edi
443f54:	8b 86 98 01 00 00    	mov    0x198(%esi),%eax
443f5a:	8b 40 08             	mov    0x8(%eax),%eax
443f5d:	89 04 24             	mov    %eax,(%esp)
443f60:	3b 3c 24             	cmp    (%esp),%edi
443f63:	0f 8d b5 00 00 00    	jge    0x44401e
443f69:	8b 86 98 01 00 00    	mov    0x198(%esi),%eax
443f6f:	8b d7                	mov    %edi,%edx
443f71:	e8 06 fe fc ff       	call   0x413d7c
443f76:	8b d8                	mov    %eax,%ebx
443f78:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
443f7c:	75 14                	jne    0x443f92
443f7e:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
443f82:	0f 84 8c 00 00 00    	je     0x444014
443f88:	f6 43 51 04          	testb  $0x4,0x51(%ebx)
443f8c:	0f 85 82 00 00 00    	jne    0x444014
443f92:	8b 43 44             	mov    0x44(%ebx),%eax
443f95:	03 43 4c             	add    0x4c(%ebx),%eax
443f98:	50                   	push   %eax
443f99:	8d 44 24 14          	lea    0x14(%esp),%eax
443f9d:	50                   	push   %eax
443f9e:	8b 4b 40             	mov    0x40(%ebx),%ecx
443fa1:	03 4b 48             	add    0x48(%ebx),%ecx
443fa4:	8b 53 44             	mov    0x44(%ebx),%edx
443fa7:	8b 43 40             	mov    0x40(%ebx),%eax
443faa:	e8 99 e9 fc ff       	call   0x412948
443faf:	8d 44 24 10          	lea    0x10(%esp),%eax
443fb3:	50                   	push   %eax
443fb4:	55                   	push   %ebp
443fb5:	e8 a2 23 fc ff       	call   0x40635c
443fba:	85 c0                	test   %eax,%eax
443fbc:	74 56                	je     0x444014
443fbe:	f6 46 54 80          	testb  $0x80,0x54(%esi)
443fc2:	74 06                	je     0x443fca
443fc4:	66 81 4b 54 80 00    	orw    $0x80,0x54(%ebx)
443fca:	55                   	push   %ebp
443fcb:	e8 a4 23 fc ff       	call   0x406374
443fd0:	89 44 24 04          	mov    %eax,0x4(%esp)
443fd4:	8b 4b 44             	mov    0x44(%ebx),%ecx
443fd7:	8b 53 40             	mov    0x40(%ebx),%edx
443fda:	8b c5                	mov    %ebp,%eax
443fdc:	e8 63 a2 ff ff       	call   0x43e244
443fe1:	8b 43 4c             	mov    0x4c(%ebx),%eax
443fe4:	50                   	push   %eax
443fe5:	8b 43 48             	mov    0x48(%ebx),%eax
443fe8:	50                   	push   %eax
443fe9:	6a 00                	push   $0x0
443feb:	6a 00                	push   $0x0
443fed:	55                   	push   %ebp
443fee:	e8 21 23 fc ff       	call   0x406314
443ff3:	6a 00                	push   $0x0
443ff5:	8b cd                	mov    %ebp,%ecx
443ff7:	ba 0f 00 00 00       	mov    $0xf,%edx
443ffc:	8b c3                	mov    %ebx,%eax
443ffe:	e8 b9 ca ff ff       	call   0x440abc
444003:	8b 44 24 04          	mov    0x4(%esp),%eax
444007:	50                   	push   %eax
444008:	55                   	push   %ebp
444009:	e8 5e 23 fc ff       	call   0x40636c
44400e:	66 81 63 54 7f ff    	andw   $0xff7f,0x54(%ebx)
444014:	47                   	inc    %edi
444015:	3b 3c 24             	cmp    (%esp),%edi
444018:	0f 8c 4b ff ff ff    	jl     0x443f69
44401e:	8b 86 9c 01 00 00    	mov    0x19c(%esi),%eax
444024:	85 c0                	test   %eax,%eax
444026:	0f 84 f8 00 00 00    	je     0x444124
44402c:	8b 40 08             	mov    0x8(%eax),%eax
44402f:	48                   	dec    %eax
444030:	85 c0                	test   %eax,%eax
444032:	0f 8c ec 00 00 00    	jl     0x444124
444038:	40                   	inc    %eax
444039:	89 44 24 0c          	mov    %eax,0xc(%esp)
44403d:	33 ff                	xor    %edi,%edi
44403f:	8b 86 9c 01 00 00    	mov    0x19c(%esi),%eax
444045:	8b d7                	mov    %edi,%edx
444047:	e8 30 fd fc ff       	call   0x413d7c
44404c:	8b d8                	mov    %eax,%ebx
44404e:	80 bb a5 01 00 00 00 	cmpb   $0x0,0x1a5(%ebx)
444055:	0f 84 be 00 00 00    	je     0x444119
44405b:	f6 43 50 10          	testb  $0x10,0x50(%ebx)
44405f:	0f 84 b4 00 00 00    	je     0x444119
444065:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
444069:	75 14                	jne    0x44407f
44406b:	f6 43 1c 10          	testb  $0x10,0x1c(%ebx)
44406f:	0f 84 a4 00 00 00    	je     0x444119
444075:	f6 43 51 04          	testb  $0x4,0x51(%ebx)
444079:	0f 85 9a 00 00 00    	jne    0x444119
44407f:	b8 10 00 00 ff       	mov    $0xff000010,%eax
444084:	e8 7f 8d fd ff       	call   0x41ce08
444089:	50                   	push   %eax
44408a:	e8 b5 21 fc ff       	call   0x406244
44408f:	89 44 24 08          	mov    %eax,0x8(%esp)
444093:	8b 44 24 08          	mov    0x8(%esp),%eax
444097:	50                   	push   %eax
444098:	8b 43 44             	mov    0x44(%ebx),%eax
44409b:	03 43 4c             	add    0x4c(%ebx),%eax
44409e:	50                   	push   %eax
44409f:	8d 44 24 18          	lea    0x18(%esp),%eax
4440a3:	50                   	push   %eax
4440a4:	8b 4b 40             	mov    0x40(%ebx),%ecx
4440a7:	03 4b 48             	add    0x48(%ebx),%ecx
4440aa:	8b 53 44             	mov    0x44(%ebx),%edx
4440ad:	4a                   	dec    %edx
4440ae:	8b 43 40             	mov    0x40(%ebx),%eax
4440b1:	48                   	dec    %eax
4440b2:	e8 91 e8 fc ff       	call   0x412948
4440b7:	8d 44 24 14          	lea    0x14(%esp),%eax
4440bb:	50                   	push   %eax
4440bc:	55                   	push   %ebp
4440bd:	e8 92 24 fc ff       	call   0x406554
4440c2:	8b 44 24 08          	mov    0x8(%esp),%eax
4440c6:	50                   	push   %eax
4440c7:	e8 90 21 fc ff       	call   0x40625c
4440cc:	b8 14 00 00 ff       	mov    $0xff000014,%eax
4440d1:	e8 32 8d fd ff       	call   0x41ce08
4440d6:	50                   	push   %eax
4440d7:	e8 68 21 fc ff       	call   0x406244
4440dc:	89 44 24 08          	mov    %eax,0x8(%esp)
4440e0:	8b 44 24 08          	mov    0x8(%esp),%eax
4440e4:	50                   	push   %eax
4440e5:	8b 43 44             	mov    0x44(%ebx),%eax
4440e8:	03 43 4c             	add    0x4c(%ebx),%eax
4440eb:	40                   	inc    %eax
4440ec:	50                   	push   %eax
4440ed:	8d 44 24 18          	lea    0x18(%esp),%eax
4440f1:	50                   	push   %eax
4440f2:	8b 4b 40             	mov    0x40(%ebx),%ecx
4440f5:	03 4b 48             	add    0x48(%ebx),%ecx
4440f8:	41                   	inc    %ecx
4440f9:	8b 53 44             	mov    0x44(%ebx),%edx
4440fc:	8b 43 40             	mov    0x40(%ebx),%eax
4440ff:	e8 44 e8 fc ff       	call   0x412948
444104:	8d 44 24 14          	lea    0x14(%esp),%eax
444108:	50                   	push   %eax
444109:	55                   	push   %ebp
44410a:	e8 45 24 fc ff       	call   0x406554
44410f:	8b 44 24 08          	mov    0x8(%esp),%eax
444113:	50                   	push   %eax
444114:	e8 43 21 fc ff       	call   0x40625c
444119:	47                   	inc    %edi
44411a:	ff 4c 24 0c          	decl   0xc(%esp)
44411e:	0f 85 1b ff ff ff    	jne    0x44403f
444124:	83 c4 20             	add    $0x20,%esp
444127:	5d                   	pop    %ebp
444128:	5f                   	pop    %edi
444129:	5e                   	pop    %esi
44412a:	5b                   	pop    %ebx
44412b:	c3                   	ret
44412c:	55                   	push   %ebp
44412d:	8b ec                	mov    %esp,%ebp
44412f:	83 c4 e0             	add    $0xffffffe0,%esp
444132:	53                   	push   %ebx
444133:	56                   	push   %esi
444134:	57                   	push   %edi
444135:	8b f9                	mov    %ecx,%edi
444137:	8b f2                	mov    %edx,%esi
444139:	8b d8                	mov    %eax,%ebx
44413b:	66 81 4b 54 80 00    	orw    $0x80,0x54(%ebx)
444141:	56                   	push   %esi
444142:	e8 2d 22 fc ff       	call   0x406374
444147:	89 45 f4             	mov    %eax,-0xc(%ebp)
44414a:	8b 4d 08             	mov    0x8(%ebp),%ecx
44414d:	8b d7                	mov    %edi,%edx
44414f:	8b c6                	mov    %esi,%eax
444151:	e8 ee a0 ff ff       	call   0x43e244
444156:	8b 43 4c             	mov    0x4c(%ebx),%eax
444159:	50                   	push   %eax
44415a:	8b 43 48             	mov    0x48(%ebx),%eax
44415d:	50                   	push   %eax
44415e:	6a 00                	push   $0x0
444160:	6a 00                	push   $0x0
444162:	56                   	push   %esi
444163:	e8 ac 21 fc ff       	call   0x406314
444168:	33 ff                	xor    %edi,%edi
44416a:	33 c0                	xor    %eax,%eax
44416c:	89 45 f8             	mov    %eax,-0x8(%ebp)
44416f:	6a ec                	push   $0xffffffec
444171:	8b c3                	mov    %ebx,%eax
444173:	e8 78 1f 00 00       	call   0x4460f0
444178:	50                   	push   %eax
444179:	e8 2e 25 fc ff       	call   0x4066ac
44417e:	f6 c4 02             	test   $0x2,%ah
444181:	74 0e                	je     0x444191
444183:	c7 45 f8 0a 00 00 00 	movl   $0xa,-0x8(%ebp)
44418a:	bf 0f 20 00 00       	mov    $0x200f,%edi
44418f:	eb 22                	jmp    0x4441b3
444191:	6a f0                	push   $0xfffffff0
444193:	8b c3                	mov    %ebx,%eax
444195:	e8 56 1f 00 00       	call   0x4460f0
44419a:	50                   	push   %eax
44419b:	e8 0c 25 fc ff       	call   0x4066ac
4441a0:	a9 00 00 80 00       	test   $0x800000,%eax
4441a5:	74 0c                	je     0x4441b3
4441a7:	c7 45 f8 03 00 00 00 	movl   $0x3,-0x8(%ebp)
4441ae:	bf 0f a0 00 00       	mov    $0xa00f,%edi
4441b3:	85 ff                	test   %edi,%edi
4441b5:	74 49                	je     0x444200
4441b7:	8b 43 4c             	mov    0x4c(%ebx),%eax
4441ba:	50                   	push   %eax
4441bb:	8b 43 48             	mov    0x48(%ebx),%eax
4441be:	50                   	push   %eax
4441bf:	6a 00                	push   $0x0
4441c1:	6a 00                	push   $0x0
4441c3:	8d 45 e0             	lea    -0x20(%ebp),%eax
4441c6:	50                   	push   %eax
4441c7:	e8 a0 26 fc ff       	call   0x40686c
4441cc:	57                   	push   %edi
4441cd:	8b 45 f8             	mov    -0x8(%ebp),%eax
4441d0:	50                   	push   %eax
4441d1:	8d 45 e0             	lea    -0x20(%ebp),%eax
4441d4:	50                   	push   %eax
4441d5:	56                   	push   %esi
4441d6:	e8 f1 22 fc ff       	call   0x4064cc
4441db:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4441de:	8b 55 e0             	mov    -0x20(%ebp),%edx
4441e1:	8b c6                	mov    %esi,%eax
4441e3:	e8 5c a0 ff ff       	call   0x43e244
4441e8:	8b 45 ec             	mov    -0x14(%ebp),%eax
4441eb:	2b 45 e4             	sub    -0x1c(%ebp),%eax
4441ee:	50                   	push   %eax
4441ef:	8b 45 e8             	mov    -0x18(%ebp),%eax
4441f2:	2b 45 e0             	sub    -0x20(%ebp),%eax
4441f5:	50                   	push   %eax
4441f6:	6a 00                	push   $0x0
4441f8:	6a 00                	push   $0x0
4441fa:	56                   	push   %esi
4441fb:	e8 14 21 fc ff       	call   0x406314
444200:	6a 00                	push   $0x0
444202:	8b ce                	mov    %esi,%ecx
444204:	ba 14 00 00 00       	mov    $0x14,%edx
444209:	8b c3                	mov    %ebx,%eax
44420b:	e8 ac c8 ff ff       	call   0x440abc
444210:	6a 00                	push   $0x0
444212:	8b ce                	mov    %esi,%ecx
444214:	ba 0f 00 00 00       	mov    $0xf,%edx
444219:	8b c3                	mov    %ebx,%eax
44421b:	e8 9c c8 ff ff       	call   0x440abc
444220:	8b 83 9c 01 00 00    	mov    0x19c(%ebx),%eax
444226:	85 c0                	test   %eax,%eax
444228:	74 3d                	je     0x444267
44422a:	8b 40 08             	mov    0x8(%eax),%eax
44422d:	48                   	dec    %eax
44422e:	85 c0                	test   %eax,%eax
444230:	7c 35                	jl     0x444267
444232:	40                   	inc    %eax
444233:	89 45 f0             	mov    %eax,-0x10(%ebp)
444236:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
44423d:	8b 55 fc             	mov    -0x4(%ebp),%edx
444240:	8b 83 9c 01 00 00    	mov    0x19c(%ebx),%eax
444246:	e8 31 fb fc ff       	call   0x413d7c
44424b:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
44424f:	74 0e                	je     0x44425f
444251:	8b 50 44             	mov    0x44(%eax),%edx
444254:	52                   	push   %edx
444255:	8b 48 40             	mov    0x40(%eax),%ecx
444258:	8b d6                	mov    %esi,%edx
44425a:	e8 cd fe ff ff       	call   0x44412c
44425f:	ff 45 fc             	incl   -0x4(%ebp)
444262:	ff 4d f0             	decl   -0x10(%ebp)
444265:	75 d6                	jne    0x44423d
444267:	8b 45 f4             	mov    -0xc(%ebp),%eax
44426a:	50                   	push   %eax
44426b:	56                   	push   %esi
44426c:	e8 fb 20 fc ff       	call   0x40636c
444271:	66 81 63 54 7f ff    	andw   $0xff7f,0x54(%ebx)
444277:	5f                   	pop    %edi
444278:	5e                   	pop    %esi