41e0bd:	0d 00 00 00 02       	or     $0x2000000,%eax
41e0c2:	8b c8                	mov    %eax,%ecx
41e0c4:	33 c6                	xor    %esi,%eax
41e0c6:	0b ce                	or     %esi,%ecx
41e0c8:	a9 1f 03 08 00       	test   $0x8031f,%eax
41e0cd:	74 06                	je     0x41e0d5
41e0cf:	81 c9 00 00 00 80    	or     $0x80000000,%ecx
41e0d5:	8b c1                	mov    %ecx,%eax
41e0d7:	eb 02                	jmp    0x41e0db
41e0d9:	8b c6                	mov    %esi,%eax
41e0db:	5f                   	pop    %edi
41e0dc:	5e                   	pop    %esi
41e0dd:	5b                   	pop    %ebx
41e0de:	c9                   	leave
41e0df:	c3                   	ret
41e0e0:	8b ff                	mov    %edi,%edi
41e0e2:	55                   	push   %ebp
41e0e3:	8b ec                	mov    %esp,%ebp
41e0e5:	8b 4d 08             	mov    0x8(%ebp),%ecx
41e0e8:	8b d1                	mov    %ecx,%edx
41e0ea:	c1 ea 04             	shr    $0x4,%edx
41e0ed:	83 e2 01             	and    $0x1,%edx
41e0f0:	8b c2                	mov    %edx,%eax
41e0f2:	f6 c1 08             	test   $0x8,%cl
41e0f5:	74 06                	je     0x41e0fd
41e0f7:	83 ca 04             	or     $0x4,%edx
41e0fa:	0f b7 c2             	movzwl %dx,%eax
41e0fd:	f6 c1 04             	test   $0x4,%cl
41e100:	74 03                	je     0x41e105
41e102:	83 c8 08             	or     $0x8,%eax
41e105:	f6 c1 02             	test   $0x2,%cl
41e108:	74 03                	je     0x41e10d
41e10a:	83 c8 10             	or     $0x10,%eax
41e10d:	f6 c1 01             	test   $0x1,%cl
41e110:	74 03                	je     0x41e115
41e112:	83 c8 20             	or     $0x20,%eax
41e115:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
41e11b:	74 03                	je     0x41e120
41e11d:	83 c8 02             	or     $0x2,%eax
41e120:	56                   	push   %esi
41e121:	8b d1                	mov    %ecx,%edx
41e123:	be 00 03 00 00       	mov    $0x300,%esi
41e128:	57                   	push   %edi
41e129:	bf 00 02 00 00       	mov    $0x200,%edi
41e12e:	23 d6                	and    %esi,%edx
41e130:	74 23                	je     0x41e155
41e132:	81 fa 00 01 00 00    	cmp    $0x100,%edx
41e138:	74 16                	je     0x41e150
41e13a:	3b d7                	cmp    %edi,%edx
41e13c:	74 0b                	je     0x41e149
41e13e:	3b d6                	cmp    %esi,%edx
41e140:	75 13                	jne    0x41e155
41e142:	0d 00 0c 00 00       	or     $0xc00,%eax
41e147:	eb 0c                	jmp    0x41e155
41e149:	0d 00 08 00 00       	or     $0x800,%eax
41e14e:	eb 05                	jmp    0x41e155
41e150:	0d 00 04 00 00       	or     $0x400,%eax
41e155:	8b d1                	mov    %ecx,%edx
41e157:	81 e2 00 00 03 00    	and    $0x30000,%edx
41e15d:	74 0c                	je     0x41e16b
41e15f:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
41e165:	75 06                	jne    0x41e16d
41e167:	0b c7                	or     %edi,%eax
41e169:	eb 02                	jmp    0x41e16d
41e16b:	0b c6                	or     %esi,%eax
41e16d:	5f                   	pop    %edi
41e16e:	5e                   	pop    %esi
41e16f:	f7 c1 00 00 04 00    	test   $0x40000,%ecx
41e175:	74 05                	je     0x41e17c
41e177:	0d 00 10 00 00       	or     $0x1000,%eax
41e17c:	5d                   	pop    %ebp
41e17d:	c3                   	ret
41e17e:	8b ff                	mov    %edi,%edi
41e180:	55                   	push   %ebp
41e181:	8b ec                	mov    %esp,%ebp
41e183:	83 3d bc 49 43 00 00 	cmpl   $0x0,0x4349bc
41e18a:	56                   	push   %esi
41e18b:	75 48                	jne    0x41e1d5
41e18d:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41e191:	75 17                	jne    0x41e1aa
41e193:	e8 63 0c ff ff       	call   0x40edfb
41e198:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41e19e:	e8 de ee fe ff       	call   0x40d081
41e1a3:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41e1a8:	eb 3e                	jmp    0x41e1e8
41e1aa:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41e1ae:	74 e3                	je     0x41e193
41e1b0:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
41e1b5:	39 75 10             	cmp    %esi,0x10(%ebp)
41e1b8:	76 14                	jbe    0x41e1ce
41e1ba:	e8 3c 0c ff ff       	call   0x40edfb
41e1bf:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41e1c5:	e8 b7 ee fe ff       	call   0x40d081
41e1ca:	8b c6                	mov    %esi,%eax
41e1cc:	eb 1a                	jmp    0x41e1e8
41e1ce:	5e                   	pop    %esi
41e1cf:	5d                   	pop    %ebp
41e1d0:	e9 7b 36 00 00       	jmp    0x421850
41e1d5:	6a 00                	push   $0x0
41e1d7:	ff 75 10             	push   0x10(%ebp)
41e1da:	ff 75 0c             	push   0xc(%ebp)
41e1dd:	ff 75 08             	push   0x8(%ebp)
41e1e0:	e8 06 00 00 00       	call   0x41e1eb
41e1e5:	83 c4 10             	add    $0x10,%esp
41e1e8:	5e                   	pop    %esi
41e1e9:	5d                   	pop    %ebp
41e1ea:	c3                   	ret
41e1eb:	8b ff                	mov    %edi,%edi
41e1ed:	55                   	push   %ebp
41e1ee:	8b ec                	mov    %esp,%ebp
41e1f0:	83 ec 14             	sub    $0x14,%esp
41e1f3:	57                   	push   %edi
41e1f4:	8b 7d 08             	mov    0x8(%ebp),%edi
41e1f7:	85 ff                	test   %edi,%edi
41e1f9:	75 1a                	jne    0x41e215
41e1fb:	e8 fb 0b ff ff       	call   0x40edfb
41e200:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41e206:	e8 76 ee fe ff       	call   0x40d081
41e20b:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41e210:	e9 9c 00 00 00       	jmp    0x41e2b1
41e215:	53                   	push   %ebx
41e216:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41e219:	85 db                	test   %ebx,%ebx
41e21b:	75 17                	jne    0x41e234
41e21d:	e8 d9 0b ff ff       	call   0x40edfb
41e222:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41e228:	e8 54 ee fe ff       	call   0x40d081
41e22d:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41e232:	eb 7c                	jmp    0x41e2b0
41e234:	56                   	push   %esi
41e235:	8b 75 10             	mov    0x10(%ebp),%esi
41e238:	81 fe ff ff ff 7f    	cmp    $0x7fffffff,%esi
41e23e:	76 17                	jbe    0x41e257
41e240:	e8 b6 0b ff ff       	call   0x40edfb
41e245:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41e24b:	e8 31 ee fe ff       	call   0x40d081
41e250:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41e255:	eb 58                	jmp    0x41e2af
41e257:	85 f6                	test   %esi,%esi
41e259:	75 04                	jne    0x41e25f
41e25b:	33 c0                	xor    %eax,%eax
41e25d:	eb 50                	jmp    0x41e2af
41e25f:	ff 75 14             	push   0x14(%ebp)
41e262:	8d 4d ec             	lea    -0x14(%ebp),%ecx
41e265:	e8 14 da fe ff       	call   0x40bc7e
41e26a:	8b 45 f0             	mov    -0x10(%ebp),%eax
41e26d:	8b 88 94 00 00 00    	mov    0x94(%eax),%ecx
41e273:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41e276:	0f b6 07             	movzbl (%edi),%eax
41e279:	47                   	inc    %edi
41e27a:	8b 55 fc             	mov    -0x4(%ebp),%edx
41e27d:	0f b6 0c 08          	movzbl (%eax,%ecx,1),%ecx
41e281:	8a 03                	mov    (%ebx),%al
41e283:	43                   	inc    %ebx
41e284:	0f b6 c0             	movzbl %al,%eax
41e287:	0f b6 04 10          	movzbl (%eax,%edx,1),%eax
41e28b:	8b d1                	mov    %ecx,%edx
41e28d:	2b d0                	sub    %eax,%edx
41e28f:	75 0c                	jne    0x41e29d
41e291:	85 c9                	test   %ecx,%ecx
41e293:	74 08                	je     0x41e29d
41e295:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e298:	83 ee 01             	sub    $0x1,%esi
41e29b:	75 d9                	jne    0x41e276
41e29d:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
41e2a1:	74 0a                	je     0x41e2ad
41e2a3:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41e2a6:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
41e2ad:	8b c2                	mov    %edx,%eax
41e2af:	5e                   	pop    %esi
41e2b0:	5b                   	pop    %ebx
41e2b1:	5f                   	pop    %edi
41e2b2:	c9                   	leave
41e2b3:	c3                   	ret
41e2b4:	6a 10                	push   $0x10
41e2b6:	68 20 1a 43 00       	push   $0x431a20
41e2bb:	e8 00 9d fe ff       	call   0x407fc0
41e2c0:	8b 75 18             	mov    0x18(%ebp),%esi
41e2c3:	85 f6                	test   %esi,%esi
41e2c5:	75 13                	jne    0x41e2da
41e2c7:	e8 2f 0b ff ff       	call   0x40edfb
41e2cc:	6a 16                	push   $0x16
41e2ce:	5e                   	pop    %esi
41e2cf:	89 30                	mov    %esi,(%eax)
41e2d1:	e8 ab ed fe ff       	call   0x40d081
41e2d6:	8b c6                	mov    %esi,%eax
41e2d8:	eb 59                	jmp    0x41e333
41e2da:	83 0e ff             	orl    $0xffffffff,(%esi)
41e2dd:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41e2e1:	74 e4                	je     0x41e2c7
41e2e3:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
41e2e7:	74 09                	je     0x41e2f2
41e2e9:	f7 45 14 7f fe ff ff 	testl  $0xfffffe7f,0x14(%ebp)
41e2f0:	75 d5                	jne    0x41e2c7
41e2f2:	33 c0                	xor    %eax,%eax
41e2f4:	89 45 e0             	mov    %eax,-0x20(%ebp)
41e2f7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41e2fa:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e2fd:	ff 75 1c             	push   0x1c(%ebp)
41e300:	ff 75 14             	push   0x14(%ebp)
41e303:	ff 75 10             	push   0x10(%ebp)
41e306:	ff 75 0c             	push   0xc(%ebp)
41e309:	ff 75 08             	push   0x8(%ebp)
41e30c:	56                   	push   %esi
41e30d:	8d 45 e0             	lea    -0x20(%ebp),%eax
41e310:	50                   	push   %eax
41e311:	e8 6b 05 00 00       	call   0x41e881
41e316:	83 c4 1c             	add    $0x1c,%esp
41e319:	8b f8                	mov    %eax,%edi
41e31b:	89 7d e4             	mov    %edi,-0x1c(%ebp)
41e31e:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41e325:	e8 1f 00 00 00       	call   0x41e349
41e32a:	85 ff                	test   %edi,%edi
41e32c:	74 03                	je     0x41e331
41e32e:	83 0e ff             	orl    $0xffffffff,(%esi)
41e331:	8b c7                	mov    %edi,%eax
41e333:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41e336:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41e33d:	59                   	pop    %ecx
41e33e:	5f                   	pop    %edi
41e33f:	5e                   	pop    %esi
41e340:	5b                   	pop    %ebx
41e341:	c9                   	leave
41e342:	c3                   	ret
41e343:	8b 75 18             	mov    0x18(%ebp),%esi
41e346:	8b 7d e4             	mov    -0x1c(%ebp),%edi
41e349:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
41e34d:	74 25                	je     0x41e374
41e34f:	85 ff                	test   %edi,%edi
41e351:	74 19                	je     0x41e36c
41e353:	8b 0e                	mov    (%esi),%ecx
41e355:	8b c1                	mov    %ecx,%eax
41e357:	c1 f8 06             	sar    $0x6,%eax
41e35a:	83 e1 3f             	and    $0x3f,%ecx
41e35d:	6b c9 38             	imul   $0x38,%ecx,%ecx
41e360:	8b 04 85 c0 4a 43 00 	mov    0x434ac0(,%eax,4),%eax
41e367:	80 64 08 28 fe       	andb   $0xfe,0x28(%eax,%ecx,1)
41e36c:	ff 36                	push   (%esi)
41e36e:	e8 bc d2 ff ff       	call   0x41b62f
41e373:	59                   	pop    %ecx
41e374:	c3                   	ret
41e375:	8b ff                	mov    %edi,%edi
41e377:	55                   	push   %ebp
41e378:	8b ec                	mov    %esp,%ebp
41e37a:	51                   	push   %ecx
41e37b:	8b 45 08             	mov    0x8(%ebp),%eax
41e37e:	8b 55 08             	mov    0x8(%ebp),%edx
41e381:	83 e0 3f             	and    $0x3f,%eax
41e384:	53                   	push   %ebx
41e385:	56                   	push   %esi
41e386:	57                   	push   %edi
41e387:	8b 7d 28             	mov    0x28(%ebp),%edi
41e38a:	33 db                	xor    %ebx,%ebx
41e38c:	c1 fa 06             	sar    $0x6,%edx
41e38f:	6b c8 38             	imul   $0x38,%eax,%ecx
41e392:	88 1f                	mov    %bl,(%edi)
41e394:	8b 04 95 c0 4a 43 00 	mov    0x434ac0(,%edx,4),%eax
41e39b:	38 5c 08 28          	cmp    %bl,0x28(%eax,%ecx,1)
41e39f:	0f 8d 11 02 00 00    	jge    0x41e5b6
41e3a5:	8b 75 24             	mov    0x24(%ebp),%esi
41e3a8:	f7 c6 00 40 07 00    	test   $0x74000,%esi
41e3ae:	75 25                	jne    0x41e3d5
41e3b0:	8d 45 fc             	lea    -0x4(%ebp),%eax
41e3b3:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41e3b6:	50                   	push   %eax
41e3b7:	e8 c5 21 ff ff       	call   0x410581
41e3bc:	59                   	pop    %ecx
41e3bd:	85 c0                	test   %eax,%eax
41e3bf:	0f 85 f8 01 00 00    	jne    0x41e5bd
41e3c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e3c8:	25 00 40 07 00       	and    $0x74000,%eax
41e3cd:	75 43                	jne    0x41e412
41e3cf:	81 ce 00 40 00 00    	or     $0x4000,%esi
41e3d5:	8b c6                	mov    %esi,%eax
41e3d7:	25 00 40 07 00       	and    $0x74000,%eax
41e3dc:	3d 00 40 00 00       	cmp    $0x4000,%eax
41e3e1:	74 45                	je     0x41e428
41e3e3:	3d 00 00 01 00       	cmp    $0x10000,%eax
41e3e8:	74 2c                	je     0x41e416
41e3ea:	3d 00 40 01 00       	cmp    $0x14000,%eax
41e3ef:	74 25                	je     0x41e416
41e3f1:	3d 00 00 02 00       	cmp    $0x20000,%eax
41e3f6:	74 2b                	je     0x41e423
41e3f8:	3d 00 40 02 00       	cmp    $0x24000,%eax
41e3fd:	74 24                	je     0x41e423
41e3ff:	3d 00 00 04 00       	cmp    $0x40000,%eax
41e404:	74 07                	je     0x41e40d
41e406:	3d 00 40 04 00       	cmp    $0x44000,%eax
41e40b:	75 1d                	jne    0x41e42a
41e40d:	c6 07 01             	movb   $0x1,(%edi)
41e410:	eb 18                	jmp    0x41e42a
41e412:	0b f0                	or     %eax,%esi
41e414:	eb bf                	jmp    0x41e3d5
41e416:	b9 01 03 00 00       	mov    $0x301,%ecx
41e41b:	8b c6                	mov    %esi,%eax
41e41d:	23 c1                	and    %ecx,%eax
41e41f:	3b c1                	cmp    %ecx,%eax
41e421:	75 07                	jne    0x41e42a
41e423:	c6 07 02             	movb   $0x2,(%edi)
41e426:	eb 02                	jmp    0x41e42a
41e428:	88 1f                	mov    %bl,(%edi)
41e42a:	f7 c6 00 00 07 00    	test   $0x70000,%esi
41e430:	0f 84 80 01 00 00    	je     0x41e5b6
41e436:	f6 45 0c 40          	testb  $0x40,0xc(%ebp)
41e43a:	0f 85 76 01 00 00    	jne    0x41e5b6
41e440:	8b 45 10             	mov    0x10(%ebp),%eax
41e443:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
41e448:	23 c2                	and    %edx,%eax
41e44a:	8b cb                	mov    %ebx,%ecx
41e44c:	8b f3                	mov    %ebx,%esi
41e44e:	3d 00 00 00 40       	cmp    $0x40000000,%eax
41e453:	74 0f                	je     0x41e464
41e455:	3d 00 00 00 80       	cmp    $0x80000000,%eax
41e45a:	74 31                	je     0x41e48d
41e45c:	3b c2                	cmp    %edx,%eax
41e45e:	0f 85 52 01 00 00    	jne    0x41e5b6
41e464:	8b 45 14             	mov    0x14(%ebp),%eax
41e467:	85 c0                	test   %eax,%eax
41e469:	0f 84 47 01 00 00    	je     0x41e5b6
41e46f:	83 f8 02             	cmp    $0x2,%eax
41e472:	76 0e                	jbe    0x41e482
41e474:	83 f8 04             	cmp    $0x4,%eax
41e477:	76 5b                	jbe    0x41e4d4
41e479:	83 f8 05             	cmp    $0x5,%eax
41e47c:	0f 85 34 01 00 00    	jne    0x41e5b6
41e482:	33 f6                	xor    %esi,%esi
41e484:	46                   	inc    %esi
41e485:	85 c9                	test   %ecx,%ecx
41e487:	0f 84 d4 00 00 00    	je     0x41e561
41e48d:	6a 03                	push   $0x3
41e48f:	8d 45 fc             	lea    -0x4(%ebp),%eax
41e492:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41e495:	50                   	push   %eax
41e496:	ff 75 08             	push   0x8(%ebp)
41e499:	e8 5c 93 ff ff       	call   0x4177fa
41e49e:	83 c4 0c             	add    $0xc,%esp
41e4a1:	85 c0                	test   %eax,%eax
41e4a3:	7e 09                	jle    0x41e4ae
41e4a5:	8d 4e ff             	lea    -0x1(%esi),%ecx
41e4a8:	f7 d9                	neg    %ecx
41e4aa:	1b c9                	sbb    %ecx,%ecx
41e4ac:	23 f1                	and    %ecx,%esi
41e4ae:	83 f8 ff             	cmp    $0xffffffff,%eax
41e4b1:	74 49                	je     0x41e4fc
41e4b3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e4b6:	83 f8 02             	cmp    $0x2,%eax
41e4b9:	74 58                	je     0x41e513
41e4bb:	83 f8 03             	cmp    $0x3,%eax
41e4be:	0f 85 88 00 00 00    	jne    0x41e54c
41e4c4:	81 f9 ef bb bf 00    	cmp    $0xbfbbef,%ecx