41effb:	81 ec 20 07 00 00    	sub    $0x720,%esp
41f001:	a1 28 ba 43 00       	mov    0x43ba28,%eax
41f006:	33 c5                	xor    %ebp,%eax
41f008:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f00b:	53                   	push   %ebx
41f00c:	56                   	push   %esi
41f00d:	8b 75 08             	mov    0x8(%ebp),%esi
41f010:	8d 85 e8 f8 ff ff    	lea    -0x718(%ebp),%eax
41f016:	57                   	push   %edi
41f017:	50                   	push   %eax
41f018:	ff 76 04             	push   0x4(%esi)
41f01b:	ff 15 7c 71 42 00    	call   *0x42717c
41f021:	33 db                	xor    %ebx,%ebx
41f023:	bf 00 01 00 00       	mov    $0x100,%edi
41f028:	85 c0                	test   %eax,%eax
41f02a:	0f 84 f0 00 00 00    	je     0x41f120
41f030:	8b c3                	mov    %ebx,%eax
41f032:	88 84 05 fc fe ff ff 	mov    %al,-0x104(%ebp,%eax,1)
41f039:	40                   	inc    %eax
41f03a:	3b c7                	cmp    %edi,%eax
41f03c:	72 f4                	jb     0x41f032
41f03e:	8a 85 ee f8 ff ff    	mov    -0x712(%ebp),%al
41f044:	8d 8d ee f8 ff ff    	lea    -0x712(%ebp),%ecx
41f04a:	c6 85 fc fe ff ff 20 	movb   $0x20,-0x104(%ebp)
41f051:	eb 1f                	jmp    0x41f072
41f053:	0f b6 51 01          	movzbl 0x1(%ecx),%edx
41f057:	0f b6 c0             	movzbl %al,%eax
41f05a:	eb 0d                	jmp    0x41f069
41f05c:	3b c7                	cmp    %edi,%eax
41f05e:	73 0d                	jae    0x41f06d
41f060:	c6 84 05 fc fe ff ff 	movb   $0x20,-0x104(%ebp,%eax,1)
41f067:	20
41f068:	40                   	inc    %eax
41f069:	3b c2                	cmp    %edx,%eax
41f06b:	76 ef                	jbe    0x41f05c
41f06d:	83 c1 02             	add    $0x2,%ecx
41f070:	8a 01                	mov    (%ecx),%al
41f072:	84 c0                	test   %al,%al
41f074:	75 dd                	jne    0x41f053
41f076:	53                   	push   %ebx
41f077:	ff 76 04             	push   0x4(%esi)
41f07a:	8d 85 fc f8 ff ff    	lea    -0x704(%ebp),%eax
41f080:	50                   	push   %eax
41f081:	57                   	push   %edi
41f082:	8d 85 fc fe ff ff    	lea    -0x104(%ebp),%eax
41f088:	50                   	push   %eax
41f089:	6a 01                	push   $0x1
41f08b:	53                   	push   %ebx
41f08c:	e8 c0 d0 ff ff       	call   0x41c151
41f091:	53                   	push   %ebx
41f092:	ff 76 04             	push   0x4(%esi)
41f095:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41f09b:	57                   	push   %edi
41f09c:	50                   	push   %eax
41f09d:	57                   	push   %edi
41f09e:	8d 85 fc fe ff ff    	lea    -0x104(%ebp),%eax
41f0a4:	50                   	push   %eax
41f0a5:	57                   	push   %edi
41f0a6:	ff b6 1c 02 00 00    	push   0x21c(%esi)
41f0ac:	53                   	push   %ebx
41f0ad:	e8 d9 d3 ff ff       	call   0x41c48b
41f0b2:	83 c4 40             	add    $0x40,%esp
41f0b5:	8d 85 fc fc ff ff    	lea    -0x304(%ebp),%eax
41f0bb:	53                   	push   %ebx
41f0bc:	ff 76 04             	push   0x4(%esi)
41f0bf:	57                   	push   %edi
41f0c0:	50                   	push   %eax
41f0c1:	57                   	push   %edi
41f0c2:	8d 85 fc fe ff ff    	lea    -0x104(%ebp),%eax
41f0c8:	50                   	push   %eax
41f0c9:	68 00 02 00 00       	push   $0x200
41f0ce:	ff b6 1c 02 00 00    	push   0x21c(%esi)
41f0d4:	53                   	push   %ebx
41f0d5:	e8 b1 d3 ff ff       	call   0x41c48b
41f0da:	83 c4 24             	add    $0x24,%esp
41f0dd:	8b cb                	mov    %ebx,%ecx
41f0df:	0f b7 84 4d fc f8 ff 	movzwl -0x704(%ebp,%ecx,2),%eax
41f0e6:	ff
41f0e7:	a8 01                	test   $0x1,%al
41f0e9:	74 0e                	je     0x41f0f9
41f0eb:	80 4c 0e 19 10       	orb    $0x10,0x19(%esi,%ecx,1)
41f0f0:	8a 84 0d fc fd ff ff 	mov    -0x204(%ebp,%ecx,1),%al
41f0f7:	eb 10                	jmp    0x41f109
41f0f9:	a8 02                	test   $0x2,%al
41f0fb:	74 15                	je     0x41f112
41f0fd:	80 4c 0e 19 20       	orb    $0x20,0x19(%esi,%ecx,1)
41f102:	8a 84 0d fc fc ff ff 	mov    -0x304(%ebp,%ecx,1),%al
41f109:	88 84 0e 19 01 00 00 	mov    %al,0x119(%esi,%ecx,1)
41f110:	eb 07                	jmp    0x41f119
41f112:	88 9c 0e 19 01 00 00 	mov    %bl,0x119(%esi,%ecx,1)
41f119:	41                   	inc    %ecx
41f11a:	3b cf                	cmp    %edi,%ecx
41f11c:	72 c1                	jb     0x41f0df
41f11e:	eb 59                	jmp    0x41f179
41f120:	6a 9f                	push   $0xffffff9f
41f122:	8d 96 19 01 00 00    	lea    0x119(%esi),%edx
41f128:	8b cb                	mov    %ebx,%ecx
41f12a:	58                   	pop    %eax
41f12b:	2b c2                	sub    %edx,%eax
41f12d:	89 85 e0 f8 ff ff    	mov    %eax,-0x720(%ebp)
41f133:	03 d1                	add    %ecx,%edx
41f135:	03 c2                	add    %edx,%eax
41f137:	89 85 e4 f8 ff ff    	mov    %eax,-0x71c(%ebp)
41f13d:	83 c0 20             	add    $0x20,%eax
41f140:	83 f8 19             	cmp    $0x19,%eax
41f143:	77 0a                	ja     0x41f14f
41f145:	80 4c 0e 19 10       	orb    $0x10,0x19(%esi,%ecx,1)
41f14a:	8d 41 20             	lea    0x20(%ecx),%eax
41f14d:	eb 13                	jmp    0x41f162
41f14f:	83 bd e4 f8 ff ff 19 	cmpl   $0x19,-0x71c(%ebp)
41f156:	77 0e                	ja     0x41f166
41f158:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
41f15b:	80 48 19 20          	orb    $0x20,0x19(%eax)
41f15f:	8d 41 e0             	lea    -0x20(%ecx),%eax
41f162:	88 02                	mov    %al,(%edx)
41f164:	eb 02                	jmp    0x41f168
41f166:	88 1a                	mov    %bl,(%edx)
41f168:	8b 85 e0 f8 ff ff    	mov    -0x720(%ebp),%eax
41f16e:	8d 96 19 01 00 00    	lea    0x119(%esi),%edx
41f174:	41                   	inc    %ecx
41f175:	3b cf                	cmp    %edi,%ecx
41f177:	72 ba                	jb     0x41f133
41f179:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f17c:	5f                   	pop    %edi
41f17d:	5e                   	pop    %esi
41f17e:	33 cd                	xor    %ebp,%ecx
41f180:	5b                   	pop    %ebx
41f181:	e8 da 7e fe ff       	call   0x407060
41f186:	8b e5                	mov    %ebp,%esp
41f188:	5d                   	pop    %ebp
41f189:	c3                   	ret
41f18a:	8b ff                	mov    %edi,%edi
41f18c:	55                   	push   %ebp
41f18d:	8b ec                	mov    %esp,%ebp
41f18f:	83 ec 0c             	sub    $0xc,%esp
41f192:	e8 c5 99 ff ff       	call   0x418b5c
41f197:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f19a:	e8 0a 01 00 00       	call   0x41f2a9
41f19f:	ff 75 08             	push   0x8(%ebp)
41f1a2:	e8 77 fd ff ff       	call   0x41ef1e
41f1a7:	59                   	pop    %ecx
41f1a8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41f1ab:	89 45 f4             	mov    %eax,-0xc(%ebp)
41f1ae:	8b 49 48             	mov    0x48(%ecx),%ecx
41f1b1:	3b 41 04             	cmp    0x4(%ecx),%eax
41f1b4:	75 04                	jne    0x41f1ba
41f1b6:	33 c0                	xor    %eax,%eax
41f1b8:	eb 53                	jmp    0x41f20d
41f1ba:	53                   	push   %ebx
41f1bb:	56                   	push   %esi
41f1bc:	57                   	push   %edi
41f1bd:	68 20 02 00 00       	push   $0x220
41f1c2:	e8 83 5b ff ff       	call   0x414d4a
41f1c7:	8b f8                	mov    %eax,%edi
41f1c9:	83 cb ff             	or     $0xffffffff,%ebx
41f1cc:	59                   	pop    %ecx
41f1cd:	85 ff                	test   %edi,%edi
41f1cf:	74 2e                	je     0x41f1ff
41f1d1:	8b 75 fc             	mov    -0x4(%ebp),%esi
41f1d4:	b9 88 00 00 00       	mov    $0x88,%ecx
41f1d9:	8b 76 48             	mov    0x48(%esi),%esi
41f1dc:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41f1de:	8b f8                	mov    %eax,%edi
41f1e0:	57                   	push   %edi
41f1e1:	ff 75 f4             	push   -0xc(%ebp)
41f1e4:	83 27 00             	andl   $0x0,(%edi)
41f1e7:	e8 5f 01 00 00       	call   0x41f34b
41f1ec:	8b f0                	mov    %eax,%esi
41f1ee:	59                   	pop    %ecx
41f1ef:	59                   	pop    %ecx
41f1f0:	3b f3                	cmp    %ebx,%esi
41f1f2:	75 1d                	jne    0x41f211
41f1f4:	e8 72 58 ff ff       	call   0x414a6b
41f1f9:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41f1ff:	8b f3                	mov    %ebx,%esi
41f201:	57                   	push   %edi
41f202:	e8 09 5b ff ff       	call   0x414d10
41f207:	59                   	pop    %ecx
41f208:	5f                   	pop    %edi
41f209:	8b c6                	mov    %esi,%eax
41f20b:	5e                   	pop    %esi
41f20c:	5b                   	pop    %ebx
41f20d:	8b e5                	mov    %ebp,%esp
41f20f:	5d                   	pop    %ebp
41f210:	c3                   	ret
41f211:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
41f215:	75 05                	jne    0x41f21c
41f217:	e8 64 79 ff ff       	call   0x416b80
41f21c:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f21f:	8b 40 48             	mov    0x48(%eax),%eax
41f222:	f0 0f c1 18          	lock xadd %ebx,(%eax)
41f226:	4b                   	dec    %ebx
41f227:	75 15                	jne    0x41f23e
41f229:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f22c:	81 78 48 48 c0 43 00 	cmpl   $0x43c048,0x48(%eax)
41f233:	74 09                	je     0x41f23e
41f235:	ff 70 48             	push   0x48(%eax)
41f238:	e8 d3 5a ff ff       	call   0x414d10
41f23d:	59                   	pop    %ecx
41f23e:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
41f244:	8b cf                	mov    %edi,%ecx
41f246:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f249:	33 ff                	xor    %edi,%edi
41f24b:	89 48 48             	mov    %ecx,0x48(%eax)
41f24e:	8b 45 fc             	mov    -0x4(%ebp),%eax
41f251:	f6 80 50 03 00 00 02 	testb  $0x2,0x350(%eax)
41f258:	75 a7                	jne    0x41f201
41f25a:	f6 05 b0 bc 43 00 01 	testb  $0x1,0x43bcb0
41f261:	75 9e                	jne    0x41f201
41f263:	8d 45 fc             	lea    -0x4(%ebp),%eax
41f266:	89 45 f4             	mov    %eax,-0xc(%ebp)
41f269:	8d 45 f4             	lea    -0xc(%ebp),%eax
41f26c:	50                   	push   %eax
41f26d:	6a 05                	push   $0x5
41f26f:	e8 80 fb ff ff       	call   0x41edf4
41f274:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
41f278:	59                   	pop    %ecx
41f279:	59                   	pop    %ecx
41f27a:	74 85                	je     0x41f201
41f27c:	a1 68 c2 43 00       	mov    0x43c268,%eax
41f281:	a3 9c bc 43 00       	mov    %eax,0x43bc9c
41f286:	e9 76 ff ff ff       	jmp    0x41f201
41f28b:	80 3d d0 a0 83 02 00 	cmpb   $0x0,0x283a0d0
41f292:	75 12                	jne    0x41f2a6
41f294:	6a 01                	push   $0x1
41f296:	6a fd                	push   $0xfffffffd
41f298:	e8 ed fe ff ff       	call   0x41f18a
41f29d:	59                   	pop    %ecx
41f29e:	59                   	pop    %ecx
41f29f:	c6 05 d0 a0 83 02 01 	movb   $0x1,0x283a0d0
41f2a6:	b0 01                	mov    $0x1,%al
41f2a8:	c3                   	ret
41f2a9:	6a 0c                	push   $0xc
41f2ab:	68 90 82 43 00       	push   $0x438290
41f2b0:	e8 6b 83 fe ff       	call   0x407620
41f2b5:	33 f6                	xor    %esi,%esi
41f2b7:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f2ba:	e8 9d 98 ff ff       	call   0x418b5c
41f2bf:	8b f8                	mov    %eax,%edi
41f2c1:	8b 0d b0 bc 43 00    	mov    0x43bcb0,%ecx
41f2c7:	85 8f 50 03 00 00    	test   %ecx,0x350(%edi)
41f2cd:	74 11                	je     0x41f2e0
41f2cf:	39 77 4c             	cmp    %esi,0x4c(%edi)
41f2d2:	74 0c                	je     0x41f2e0
41f2d4:	8b 77 48             	mov    0x48(%edi),%esi
41f2d7:	85 f6                	test   %esi,%esi
41f2d9:	75 68                	jne    0x41f343
41f2db:	e8 96 5d ff ff       	call   0x415076
41f2e0:	6a 05                	push   $0x5
41f2e2:	e8 d7 50 ff ff       	call   0x4143be
41f2e7:	59                   	pop    %ecx
41f2e8:	89 75 fc             	mov    %esi,-0x4(%ebp)
41f2eb:	8b 77 48             	mov    0x48(%edi),%esi
41f2ee:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f2f1:	3b 35 68 c2 43 00    	cmp    0x43c268,%esi
41f2f7:	74 30                	je     0x41f329
41f2f9:	85 f6                	test   %esi,%esi
41f2fb:	74 18                	je     0x41f315
41f2fd:	83 c8 ff             	or     $0xffffffff,%eax
41f300:	f0 0f c1 06          	lock xadd %eax,(%esi)
41f304:	75 0f                	jne    0x41f315
41f306:	81 fe 48 c0 43 00    	cmp    $0x43c048,%esi
41f30c:	74 07                	je     0x41f315
41f30e:	56                   	push   %esi
41f30f:	e8 fc 59 ff ff       	call   0x414d10
41f314:	59                   	pop    %ecx
41f315:	a1 68 c2 43 00       	mov    0x43c268,%eax
41f31a:	89 47 48             	mov    %eax,0x48(%edi)
41f31d:	8b 35 68 c2 43 00    	mov    0x43c268,%esi
41f323:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41f326:	f0 ff 06             	lock incl (%esi)
41f329:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41f330:	e8 05 00 00 00       	call   0x41f33a
41f335:	eb a0                	jmp    0x41f2d7
41f337:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41f33a:	6a 05                	push   $0x5
41f33c:	e8 c5 50 ff ff       	call   0x414406
41f341:	59                   	pop    %ecx
41f342:	c3                   	ret
41f343:	8b c6                	mov    %esi,%eax
41f345:	e8 1c 83 fe ff       	call   0x407666
41f34a:	c3                   	ret
41f34b:	8b ff                	mov    %edi,%edi
41f34d:	55                   	push   %ebp
41f34e:	8b ec                	mov    %esp,%ebp
41f350:	83 ec 20             	sub    $0x20,%esp
41f353:	a1 28 ba 43 00       	mov    0x43ba28,%eax
41f358:	33 c5                	xor    %ebp,%eax
41f35a:	89 45 fc             	mov    %eax,-0x4(%ebp)
41f35d:	53                   	push   %ebx
41f35e:	56                   	push   %esi
41f35f:	ff 75 08             	push   0x8(%ebp)
41f362:	8b 75 0c             	mov    0xc(%ebp),%esi
41f365:	e8 b4 fb ff ff       	call   0x41ef1e
41f36a:	8b d8                	mov    %eax,%ebx
41f36c:	59                   	pop    %ecx
41f36d:	85 db                	test   %ebx,%ebx
41f36f:	75 0e                	jne    0x41f37f
41f371:	56                   	push   %esi
41f372:	e8 1a fc ff ff       	call   0x41ef91
41f377:	59                   	pop    %ecx
41f378:	33 c0                	xor    %eax,%eax
41f37a:	e9 ad 01 00 00       	jmp    0x41f52c
41f37f:	57                   	push   %edi
41f380:	33 ff                	xor    %edi,%edi
41f382:	8b cf                	mov    %edi,%ecx
41f384:	8b c7                	mov    %edi,%eax
41f386:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41f389:	39 98 50 bd 43 00    	cmp    %ebx,0x43bd50(%eax)
41f38f:	0f 84 ea 00 00 00    	je     0x41f47f
41f395:	41                   	inc    %ecx
41f396:	83 c0 30             	add    $0x30,%eax
41f399:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41f39c:	3d f0 00 00 00       	cmp    $0xf0,%eax
41f3a1:	72 e6                	jb     0x41f389
41f3a3:	81 fb e8 fd 00 00    	cmp    $0xfde8,%ebx
41f3a9:	0f 84 c8 00 00 00    	je     0x41f477
41f3af:	81 fb e9 fd 00 00    	cmp    $0xfde9,%ebx
41f3b5:	0f 84 bc 00 00 00    	je     0x41f477
41f3bb:	0f b7 c3             	movzwl %bx,%eax
41f3be:	50                   	push   %eax
41f3bf:	ff 15 10 72 42 00    	call   *0x427210
41f3c5:	85 c0                	test   %eax,%eax
41f3c7:	0f 84 aa 00 00 00    	je     0x41f477
41f3cd:	8d 45 e8             	lea    -0x18(%ebp),%eax
41f3d0:	50                   	push   %eax
41f3d1:	53                   	push   %ebx
41f3d2:	ff 15 7c 71 42 00    	call   *0x42717c
41f3d8:	85 c0                	test   %eax,%eax
41f3da:	0f 84 84 00 00 00    	je     0x41f464
41f3e0:	68 01 01 00 00       	push   $0x101
41f3e5:	8d 46 18             	lea    0x18(%esi),%eax
41f3e8:	57                   	push   %edi
41f3e9:	50                   	push   %eax
41f3ea:	e8 f1 95 fe ff       	call   0x4089e0
41f3ef:	89 5e 04             	mov    %ebx,0x4(%esi)
41f3f2:	83 c4 0c             	add    $0xc,%esp
41f3f5:	33 db                	xor    %ebx,%ebx
41f3f7:	89 be 1c 02 00 00    	mov    %edi,0x21c(%esi)
41f3fd:	43                   	inc    %ebx
41f3fe:	39 5d e8             	cmp    %ebx,-0x18(%ebp)
41f401:	76 51                	jbe    0x41f454
41f403:	80 7d ee 00          	cmpb   $0x0,-0x12(%ebp)
41f407:	8d 45 ee             	lea    -0x12(%ebp),%eax
41f40a:	74 21                	je     0x41f42d
41f40c:	8a 48 01             	mov    0x1(%eax),%cl
41f40f:	84 c9                	test   %cl,%cl
41f411:	74 1a                	je     0x41f42d
41f413:	0f b6 d1             	movzbl %cl,%edx
41f416:	0f b6 08             	movzbl (%eax),%ecx