424090:	50                   	push   %eax
424091:	e8 b0 23 00 00       	call   0x426446
424096:	59                   	pop    %ecx
424097:	89 7d fc             	mov    %edi,-0x4(%ebp)
42409a:	8b 03                	mov    (%ebx),%eax
42409c:	f6 44 30 04 01       	testb  $0x1,0x4(%eax,%esi,1)
4240a1:	74 1c                	je     0x4240bf
4240a3:	ff 75 14             	push   0x14(%ebp)
4240a6:	ff 75 10             	push   0x10(%ebp)
4240a9:	ff 75 0c             	push   0xc(%ebp)
4240ac:	ff 75 08             	push   0x8(%ebp)
4240af:	e8 a9 fe ff ff       	call   0x423f5d
4240b4:	83 c4 10             	add    $0x10,%esp
4240b7:	89 45 dc             	mov    %eax,-0x24(%ebp)
4240ba:	89 55 e0             	mov    %edx,-0x20(%ebp)
4240bd:	eb 1a                	jmp    0x4240d9
4240bf:	e8 da a7 ff ff       	call   0x41e89e
4240c4:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4240ca:	e8 e2 a7 ff ff       	call   0x41e8b1
4240cf:	89 38                	mov    %edi,(%eax)
4240d1:	83 4d dc ff          	orl    $0xffffffff,-0x24(%ebp)
4240d5:	83 4d e0 ff          	orl    $0xffffffff,-0x20(%ebp)
4240d9:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4240e0:	e8 0c 00 00 00       	call   0x4240f1
4240e5:	8b 45 dc             	mov    -0x24(%ebp),%eax
4240e8:	8b 55 e0             	mov    -0x20(%ebp),%edx
4240eb:	e8 e1 b4 ff ff       	call   0x41f5d1
4240f0:	c3                   	ret
4240f1:	ff 75 08             	push   0x8(%ebp)
4240f4:	e8 ed 23 00 00       	call   0x4264e6
4240f9:	59                   	pop    %ecx
4240fa:	c3                   	ret
4240fb:	8b ff                	mov    %edi,%edi
4240fd:	55                   	push   %ebp
4240fe:	8b ec                	mov    %esp,%ebp
424100:	b8 e4 1a 00 00       	mov    $0x1ae4,%eax
424105:	e8 c6 63 ff ff       	call   0x41a4d0
42410a:	a1 98 f2 42 00       	mov    0x42f298,%eax
42410f:	33 c5                	xor    %ebp,%eax
424111:	89 45 fc             	mov    %eax,-0x4(%ebp)
424114:	8b 45 0c             	mov    0xc(%ebp),%eax
424117:	56                   	push   %esi
424118:	33 f6                	xor    %esi,%esi
42411a:	89 85 34 e5 ff ff    	mov    %eax,-0x1acc(%ebp)
424120:	89 b5 38 e5 ff ff    	mov    %esi,-0x1ac8(%ebp)
424126:	89 b5 30 e5 ff ff    	mov    %esi,-0x1ad0(%ebp)
42412c:	39 75 10             	cmp    %esi,0x10(%ebp)
42412f:	75 07                	jne    0x424138
424131:	33 c0                	xor    %eax,%eax
424133:	e9 e9 06 00 00       	jmp    0x424821
424138:	3b c6                	cmp    %esi,%eax
42413a:	75 27                	jne    0x424163
42413c:	e8 70 a7 ff ff       	call   0x41e8b1
424141:	89 30                	mov    %esi,(%eax)
424143:	e8 56 a7 ff ff       	call   0x41e89e
424148:	56                   	push   %esi
424149:	56                   	push   %esi
42414a:	56                   	push   %esi
42414b:	56                   	push   %esi
42414c:	56                   	push   %esi
42414d:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
424153:	e8 9b ba ff ff       	call   0x41fbf3
424158:	83 c4 14             	add    $0x14,%esp
42415b:	83 c8 ff             	or     $0xffffffff,%eax
42415e:	e9 be 06 00 00       	jmp    0x424821
424163:	53                   	push   %ebx
424164:	57                   	push   %edi
424165:	8b 7d 08             	mov    0x8(%ebp),%edi
424168:	8b c7                	mov    %edi,%eax
42416a:	c1 f8 05             	sar    $0x5,%eax
42416d:	8d 34 85 a0 f7 44 00 	lea    0x44f7a0(,%eax,4),%esi
424174:	8b 06                	mov    (%esi),%eax
424176:	83 e7 1f             	and    $0x1f,%edi
424179:	c1 e7 06             	shl    $0x6,%edi
42417c:	03 c7                	add    %edi,%eax
42417e:	8a 58 24             	mov    0x24(%eax),%bl
424181:	02 db                	add    %bl,%bl
424183:	d0 fb                	sar    $1,%bl
424185:	89 b5 28 e5 ff ff    	mov    %esi,-0x1ad8(%ebp)
42418b:	88 9d 27 e5 ff ff    	mov    %bl,-0x1ad9(%ebp)
424191:	80 fb 02             	cmp    $0x2,%bl
424194:	74 05                	je     0x42419b
424196:	80 fb 01             	cmp    $0x1,%bl
424199:	75 30                	jne    0x4241cb
42419b:	8b 4d 10             	mov    0x10(%ebp),%ecx
42419e:	f7 d1                	not    %ecx
4241a0:	f6 c1 01             	test   $0x1,%cl
4241a3:	75 26                	jne    0x4241cb
4241a5:	e8 07 a7 ff ff       	call   0x41e8b1
4241aa:	33 f6                	xor    %esi,%esi
4241ac:	89 30                	mov    %esi,(%eax)
4241ae:	e8 eb a6 ff ff       	call   0x41e89e
4241b3:	56                   	push   %esi
4241b4:	56                   	push   %esi
4241b5:	56                   	push   %esi
4241b6:	56                   	push   %esi
4241b7:	56                   	push   %esi
4241b8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4241be:	e8 30 ba ff ff       	call   0x41fbf3
4241c3:	83 c4 14             	add    $0x14,%esp
4241c6:	e9 43 06 00 00       	jmp    0x42480e
4241cb:	f6 40 04 20          	testb  $0x20,0x4(%eax)
4241cf:	74 11                	je     0x4241e2
4241d1:	6a 02                	push   $0x2
4241d3:	6a 00                	push   $0x0
4241d5:	6a 00                	push   $0x0
4241d7:	ff 75 08             	push   0x8(%ebp)
4241da:	e8 7e fd ff ff       	call   0x423f5d
4241df:	83 c4 10             	add    $0x10,%esp
4241e2:	ff 75 08             	push   0x8(%ebp)
4241e5:	e8 69 07 00 00       	call   0x424953
4241ea:	59                   	pop    %ecx
4241eb:	85 c0                	test   %eax,%eax
4241ed:	0f 84 9d 02 00 00    	je     0x424490
4241f3:	8b 06                	mov    (%esi),%eax
4241f5:	f6 44 07 04 80       	testb  $0x80,0x4(%edi,%eax,1)
4241fa:	0f 84 90 02 00 00    	je     0x424490
424200:	e8 9f a2 ff ff       	call   0x41e4a4
424205:	8b 40 6c             	mov    0x6c(%eax),%eax
424208:	33 c9                	xor    %ecx,%ecx
42420a:	39 48 14             	cmp    %ecx,0x14(%eax)
42420d:	8d 85 1c e5 ff ff    	lea    -0x1ae4(%ebp),%eax
424213:	0f 94 c1             	sete   %cl
424216:	50                   	push   %eax
424217:	8b 06                	mov    (%esi),%eax
424219:	ff 34 07             	push   (%edi,%eax,1)
42421c:	89 8d 20 e5 ff ff    	mov    %ecx,-0x1ae0(%ebp)
424222:	ff 15 5c a1 42 00    	call   *0x42a15c
424228:	85 c0                	test   %eax,%eax
42422a:	0f 84 60 02 00 00    	je     0x424490
424230:	33 c9                	xor    %ecx,%ecx
424232:	39 8d 20 e5 ff ff    	cmp    %ecx,-0x1ae0(%ebp)
424238:	74 08                	je     0x424242
42423a:	84 db                	test   %bl,%bl
42423c:	0f 84 50 02 00 00    	je     0x424492
424242:	ff 15 60 a1 42 00    	call   *0x42a160
424248:	8b 9d 34 e5 ff ff    	mov    -0x1acc(%ebp),%ebx
42424e:	89 85 1c e5 ff ff    	mov    %eax,-0x1ae4(%ebp)
424254:	33 c0                	xor    %eax,%eax
424256:	89 85 3c e5 ff ff    	mov    %eax,-0x1ac4(%ebp)
42425c:	39 45 10             	cmp    %eax,0x10(%ebp)
42425f:	0f 86 42 05 00 00    	jbe    0x4247a7
424265:	89 85 44 e5 ff ff    	mov    %eax,-0x1abc(%ebp)
42426b:	8a 85 27 e5 ff ff    	mov    -0x1ad9(%ebp),%al
424271:	84 c0                	test   %al,%al
424273:	0f 85 67 01 00 00    	jne    0x4243e0
424279:	8a 0b                	mov    (%ebx),%cl
42427b:	8b b5 28 e5 ff ff    	mov    -0x1ad8(%ebp),%esi
424281:	33 c0                	xor    %eax,%eax
424283:	80 f9 0a             	cmp    $0xa,%cl
424286:	0f 94 c0             	sete   %al
424289:	89 85 20 e5 ff ff    	mov    %eax,-0x1ae0(%ebp)
42428f:	8b 06                	mov    (%esi),%eax
424291:	03 c7                	add    %edi,%eax
424293:	83 78 38 00          	cmpl   $0x0,0x38(%eax)
424297:	74 15                	je     0x4242ae
424299:	8a 50 34             	mov    0x34(%eax),%dl
42429c:	88 55 f4             	mov    %dl,-0xc(%ebp)
42429f:	88 4d f5             	mov    %cl,-0xb(%ebp)
4242a2:	83 60 38 00          	andl   $0x0,0x38(%eax)
4242a6:	6a 02                	push   $0x2
4242a8:	8d 45 f4             	lea    -0xc(%ebp),%eax
4242ab:	50                   	push   %eax
4242ac:	eb 4b                	jmp    0x4242f9
4242ae:	0f be c1             	movsbl %cl,%eax
4242b1:	50                   	push   %eax
4242b2:	e8 fa df ff ff       	call   0x4222b1
4242b7:	59                   	pop    %ecx
4242b8:	85 c0                	test   %eax,%eax
4242ba:	74 3a                	je     0x4242f6
4242bc:	8b 8d 34 e5 ff ff    	mov    -0x1acc(%ebp),%ecx
4242c2:	2b cb                	sub    %ebx,%ecx
4242c4:	03 4d 10             	add    0x10(%ebp),%ecx
4242c7:	33 c0                	xor    %eax,%eax
4242c9:	40                   	inc    %eax
4242ca:	3b c8                	cmp    %eax,%ecx
4242cc:	0f 86 a5 01 00 00    	jbe    0x424477
4242d2:	6a 02                	push   $0x2
4242d4:	8d 85 40 e5 ff ff    	lea    -0x1ac0(%ebp),%eax
4242da:	53                   	push   %ebx
4242db:	50                   	push   %eax
4242dc:	e8 c4 09 00 00       	call   0x424ca5
4242e1:	83 c4 0c             	add    $0xc,%esp
4242e4:	83 f8 ff             	cmp    $0xffffffff,%eax
4242e7:	0f 84 b1 04 00 00    	je     0x42479e
4242ed:	43                   	inc    %ebx
4242ee:	ff 85 44 e5 ff ff    	incl   -0x1abc(%ebp)
4242f4:	eb 1b                	jmp    0x424311
4242f6:	6a 01                	push   $0x1
4242f8:	53                   	push   %ebx
4242f9:	8d 85 40 e5 ff ff    	lea    -0x1ac0(%ebp),%eax
4242ff:	50                   	push   %eax
424300:	e8 a0 09 00 00       	call   0x424ca5
424305:	83 c4 0c             	add    $0xc,%esp
424308:	83 f8 ff             	cmp    $0xffffffff,%eax
42430b:	0f 84 8d 04 00 00    	je     0x42479e
424311:	33 c0                	xor    %eax,%eax
424313:	50                   	push   %eax
424314:	50                   	push   %eax
424315:	6a 05                	push   $0x5
424317:	8d 4d f4             	lea    -0xc(%ebp),%ecx
42431a:	51                   	push   %ecx
42431b:	6a 01                	push   $0x1
42431d:	8d 8d 40 e5 ff ff    	lea    -0x1ac0(%ebp),%ecx
424323:	51                   	push   %ecx
424324:	50                   	push   %eax
424325:	ff b5 1c e5 ff ff    	push   -0x1ae4(%ebp)
42432b:	43                   	inc    %ebx
42432c:	ff 85 44 e5 ff ff    	incl   -0x1abc(%ebp)
424332:	ff 15 20 a1 42 00    	call   *0x42a120
424338:	8b f0                	mov    %eax,%esi
42433a:	85 f6                	test   %esi,%esi
42433c:	0f 84 5c 04 00 00    	je     0x42479e
424342:	6a 00                	push   $0x0
424344:	8d 85 3c e5 ff ff    	lea    -0x1ac4(%ebp),%eax
42434a:	50                   	push   %eax
42434b:	56                   	push   %esi
42434c:	8d 45 f4             	lea    -0xc(%ebp),%eax
42434f:	50                   	push   %eax
424350:	8b 85 28 e5 ff ff    	mov    -0x1ad8(%ebp),%eax
424356:	8b 00                	mov    (%eax),%eax
424358:	ff 34 07             	push   (%edi,%eax,1)
42435b:	ff 15 e8 a1 42 00    	call   *0x42a1e8
424361:	85 c0                	test   %eax,%eax
424363:	0f 84 29 04 00 00    	je     0x424792
424369:	8b 85 44 e5 ff ff    	mov    -0x1abc(%ebp),%eax
42436f:	8b 8d 30 e5 ff ff    	mov    -0x1ad0(%ebp),%ecx
424375:	03 c1                	add    %ecx,%eax
424377:	39 b5 3c e5 ff ff    	cmp    %esi,-0x1ac4(%ebp)
42437d:	89 85 38 e5 ff ff    	mov    %eax,-0x1ac8(%ebp)
424383:	0f 8c 15 04 00 00    	jl     0x42479e
424389:	83 bd 20 e5 ff ff 00 	cmpl   $0x0,-0x1ae0(%ebp)
424390:	0f 84 cd 00 00 00    	je     0x424463
424396:	6a 00                	push   $0x0
424398:	8d 85 3c e5 ff ff    	lea    -0x1ac4(%ebp),%eax
42439e:	50                   	push   %eax
42439f:	6a 01                	push   $0x1
4243a1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4243a4:	50                   	push   %eax
4243a5:	8b 85 28 e5 ff ff    	mov    -0x1ad8(%ebp),%eax
4243ab:	8b 00                	mov    (%eax),%eax
4243ad:	c6 45 f4 0d          	movb   $0xd,-0xc(%ebp)
4243b1:	ff 34 07             	push   (%edi,%eax,1)
4243b4:	ff 15 e8 a1 42 00    	call   *0x42a1e8
4243ba:	85 c0                	test   %eax,%eax
4243bc:	0f 84 d0 03 00 00    	je     0x424792
4243c2:	83 bd 3c e5 ff ff 01 	cmpl   $0x1,-0x1ac4(%ebp)
4243c9:	0f 8c cf 03 00 00    	jl     0x42479e
4243cf:	ff 85 30 e5 ff ff    	incl   -0x1ad0(%ebp)
4243d5:	ff 85 38 e5 ff ff    	incl   -0x1ac8(%ebp)
4243db:	e9 83 00 00 00       	jmp    0x424463
4243e0:	3c 01                	cmp    $0x1,%al
4243e2:	74 04                	je     0x4243e8
4243e4:	3c 02                	cmp    $0x2,%al
4243e6:	75 21                	jne    0x424409
4243e8:	0f b7 33             	movzwl (%ebx),%esi
4243eb:	33 c9                	xor    %ecx,%ecx
4243ed:	66 83 fe 0a          	cmp    $0xa,%si
4243f1:	0f 94 c1             	sete   %cl
4243f4:	43                   	inc    %ebx
4243f5:	43                   	inc    %ebx
4243f6:	83 85 44 e5 ff ff 02 	addl   $0x2,-0x1abc(%ebp)
4243fd:	89 b5 40 e5 ff ff    	mov    %esi,-0x1ac0(%ebp)
424403:	89 8d 20 e5 ff ff    	mov    %ecx,-0x1ae0(%ebp)
424409:	3c 01                	cmp    $0x1,%al
42440b:	74 04                	je     0x424411
42440d:	3c 02                	cmp    $0x2,%al
42440f:	75 52                	jne    0x424463
424411:	ff b5 40 e5 ff ff    	push   -0x1ac0(%ebp)
424417:	e8 f1 20 00 00       	call   0x42650d
42441c:	59                   	pop    %ecx
42441d:	66 3b 85 40 e5 ff ff 	cmp    -0x1ac0(%ebp),%ax
424424:	0f 85 68 03 00 00    	jne    0x424792
42442a:	83 85 38 e5 ff ff 02 	addl   $0x2,-0x1ac8(%ebp)
424431:	83 bd 20 e5 ff ff 00 	cmpl   $0x0,-0x1ae0(%ebp)
424438:	74 29                	je     0x424463
42443a:	6a 0d                	push   $0xd
42443c:	58                   	pop    %eax
42443d:	50                   	push   %eax
42443e:	89 85 40 e5 ff ff    	mov    %eax,-0x1ac0(%ebp)
424444:	e8 c4 20 00 00       	call   0x42650d
424449:	59                   	pop    %ecx
42444a:	66 3b 85 40 e5 ff ff 	cmp    -0x1ac0(%ebp),%ax
424451:	0f 85 3b 03 00 00    	jne    0x424792
424457:	ff 85 38 e5 ff ff    	incl   -0x1ac8(%ebp)
42445d:	ff 85 30 e5 ff ff    	incl   -0x1ad0(%ebp)
424463:	8b 45 10             	mov    0x10(%ebp),%eax
424466:	39 85 44 e5 ff ff    	cmp    %eax,-0x1abc(%ebp)
42446c:	0f 82 f9 fd ff ff    	jb     0x42426b
424472:	e9 27 03 00 00       	jmp    0x42479e
424477:	8b 0e                	mov    (%esi),%ecx
424479:	8a 13                	mov    (%ebx),%dl
42447b:	ff 85 38 e5 ff ff    	incl   -0x1ac8(%ebp)
424481:	88 54 0f 34          	mov    %dl,0x34(%edi,%ecx,1)
424485:	8b 0e                	mov    (%esi),%ecx
424487:	89 44 0f 38          	mov    %eax,0x38(%edi,%ecx,1)
42448b:	e9 0e 03 00 00       	jmp    0x42479e
424490:	33 c9                	xor    %ecx,%ecx
424492:	8b 06                	mov    (%esi),%eax
424494:	03 c7                	add    %edi,%eax
424496:	f6 40 04 80          	testb  $0x80,0x4(%eax)
42449a:	0f 84 bf 02 00 00    	je     0x42475f
4244a0:	8b 85 34 e5 ff ff    	mov    -0x1acc(%ebp),%eax
4244a6:	89 8d 40 e5 ff ff    	mov    %ecx,-0x1ac0(%ebp)
4244ac:	84 db                	test   %bl,%bl
4244ae:	0f 85 ca 00 00 00    	jne    0x42457e
4244b4:	89 85 3c e5 ff ff    	mov    %eax,-0x1ac4(%ebp)
4244ba:	39 4d 10             	cmp    %ecx,0x10(%ebp)
4244bd:	0f 86 20 03 00 00    	jbe    0x4247e3
4244c3:	eb 06                	jmp    0x4244cb
4244c5:	8b b5 28 e5 ff ff    	mov    -0x1ad8(%ebp),%esi
4244cb:	8b 8d 3c e5 ff ff    	mov    -0x1ac4(%ebp),%ecx
4244d1:	83 a5 44 e5 ff ff 00 	andl   $0x0,-0x1abc(%ebp)
4244d8:	2b 8d 34 e5 ff ff    	sub    -0x1acc(%ebp),%ecx
4244de:	8d 85 48 e5 ff ff    	lea    -0x1ab8(%ebp),%eax
4244e4:	3b 4d 10             	cmp    0x10(%ebp),%ecx
4244e7:	73 39                	jae    0x424522
4244e9:	8b 95 3c e5 ff ff    	mov    -0x1ac4(%ebp),%edx
4244ef:	ff 85 3c e5 ff ff    	incl   -0x1ac4(%ebp)
4244f5:	8a 12                	mov    (%edx),%dl
4244f7:	41                   	inc    %ecx
4244f8:	80 fa 0a             	cmp    $0xa,%dl
4244fb:	75 10                	jne    0x42450d
4244fd:	ff 85 30 e5 ff ff    	incl   -0x1ad0(%ebp)
424503:	c6 00 0d             	movb   $0xd,(%eax)
424506:	40                   	inc    %eax
424507:	ff 85 44 e5 ff ff    	incl   -0x1abc(%ebp)
42450d:	88 10                	mov    %dl,(%eax)
42450f:	40                   	inc    %eax
424510:	ff 85 44 e5 ff ff    	incl   -0x1abc(%ebp)
424516:	81 bd 44 e5 ff ff ff 	cmpl   $0x13ff,-0x1abc(%ebp)
42451d:	13 00 00
424520:	72 c2                	jb     0x4244e4
424522:	8b d8                	mov    %eax,%ebx
424524:	8d 85 48 e5 ff ff    	lea    -0x1ab8(%ebp),%eax
42452a:	2b d8                	sub    %eax,%ebx
42452c:	6a 00                	push   $0x0
42452e:	8d 85 2c e5 ff ff    	lea    -0x1ad4(%ebp),%eax
424534:	50                   	push   %eax
424535:	53                   	push   %ebx
424536:	8d 85 48 e5 ff ff    	lea    -0x1ab8(%ebp),%eax
42453c:	50                   	push   %eax
42453d:	8b 06                	mov    (%esi),%eax
42453f:	ff 34 07             	push   (%edi,%eax,1)
424542:	ff 15 e8 a1 42 00    	call   *0x42a1e8
424548:	85 c0                	test   %eax,%eax
42454a:	0f 84 42 02 00 00    	je     0x424792
424550:	8b 85 2c e5 ff ff    	mov    -0x1ad4(%ebp),%eax
424556:	01 85 38 e5 ff ff    	add    %eax,-0x1ac8(%ebp)
42455c:	3b c3                	cmp    %ebx,%eax