43411d:	8b de                	mov    %esi,%ebx
43411f:	2b df                	sub    %edi,%ebx
434121:	8d 51 02             	lea    0x2(%ecx),%edx
434124:	66 8b 01             	mov    (%ecx),%ax
434127:	83 c1 02             	add    $0x2,%ecx
43412a:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
43412e:	75 f4                	jne    0x434124
434130:	2b ca                	sub    %edx,%ecx
434132:	d1 f9                	sar    $1,%ecx
434134:	6a 02                	push   $0x2
434136:	8d 41 01             	lea    0x1(%ecx),%eax
434139:	50                   	push   %eax
43413a:	89 45 f8             	mov    %eax,-0x8(%ebp)
43413d:	e8 d8 82 ff ff       	call   0x42c41a
434142:	89 04 3b             	mov    %eax,(%ebx,%edi,1)
434145:	33 c0                	xor    %eax,%eax
434147:	50                   	push   %eax
434148:	e8 2a 83 ff ff       	call   0x42c477
43414d:	83 c4 0c             	add    $0xc,%esp
434150:	83 3c 3b 00          	cmpl   $0x0,(%ebx,%edi,1)
434154:	74 2f                	je     0x434185
434156:	ff 37                	push   (%edi)
434158:	ff 75 f8             	push   -0x8(%ebp)
43415b:	ff 34 3b             	push   (%ebx,%edi,1)
43415e:	e8 13 23 ff ff       	call   0x426476
434163:	83 c4 0c             	add    $0xc,%esp
434166:	85 c0                	test   %eax,%eax
434168:	75 20                	jne    0x43418a
43416a:	83 c7 04             	add    $0x4,%edi
43416d:	8b 0f                	mov    (%edi),%ecx
43416f:	85 c9                	test   %ecx,%ecx
434171:	75 ae                	jne    0x434121
434173:	5b                   	pop    %ebx
434174:	33 c0                	xor    %eax,%eax
434176:	50                   	push   %eax
434177:	e8 fb 82 ff ff       	call   0x42c477
43417c:	59                   	pop    %ecx
43417d:	8b c6                	mov    %esi,%eax
43417f:	5e                   	pop    %esi
434180:	e9 65 ff ff ff       	jmp    0x4340ea
434185:	e8 ef 4d ff ff       	call   0x428f79
43418a:	33 c0                	xor    %eax,%eax
43418c:	50                   	push   %eax
43418d:	50                   	push   %eax
43418e:	50                   	push   %eax
43418f:	50                   	push   %eax
434190:	50                   	push   %eax
434191:	e8 06 c9 fe ff       	call   0x420a9c
434196:	cc                   	int3
434197:	a1 e0 5c 45 00       	mov    0x455ce0,%eax
43419c:	3b 05 e4 5c 45 00    	cmp    0x455ce4,%eax
4341a2:	75 0c                	jne    0x4341b0
4341a4:	50                   	push   %eax
4341a5:	e8 2f ff ff ff       	call   0x4340d9
4341aa:	59                   	pop    %ecx
4341ab:	a3 e0 5c 45 00       	mov    %eax,0x455ce0
4341b0:	c3                   	ret
4341b1:	8b ff                	mov    %edi,%edi
4341b3:	55                   	push   %ebp
4341b4:	8b ec                	mov    %esp,%ebp
4341b6:	53                   	push   %ebx
4341b7:	56                   	push   %esi
4341b8:	57                   	push   %edi
4341b9:	8b 3d e0 5c 45 00    	mov    0x455ce0,%edi
4341bf:	8b f7                	mov    %edi,%esi
4341c1:	8b 07                	mov    (%edi),%eax
4341c3:	85 c0                	test   %eax,%eax
4341c5:	74 2d                	je     0x4341f4
4341c7:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4341ca:	53                   	push   %ebx
4341cb:	50                   	push   %eax
4341cc:	ff 75 08             	push   0x8(%ebp)
4341cf:	e8 1b 70 00 00       	call   0x43b1ef
4341d4:	83 c4 0c             	add    $0xc,%esp
4341d7:	85 c0                	test   %eax,%eax
4341d9:	75 10                	jne    0x4341eb
4341db:	8b 06                	mov    (%esi),%eax
4341dd:	0f b7 04 58          	movzwl (%eax,%ebx,2),%eax
4341e1:	83 f8 3d             	cmp    $0x3d,%eax
4341e4:	74 1c                	je     0x434202
4341e6:	66 85 c0             	test   %ax,%ax
4341e9:	74 17                	je     0x434202
4341eb:	83 c6 04             	add    $0x4,%esi
4341ee:	8b 06                	mov    (%esi),%eax
4341f0:	85 c0                	test   %eax,%eax
4341f2:	75 d6                	jne    0x4341ca
4341f4:	2b f7                	sub    %edi,%esi
4341f6:	c1 fe 02             	sar    $0x2,%esi
4341f9:	f7 de                	neg    %esi
4341fb:	5f                   	pop    %edi
4341fc:	8b c6                	mov    %esi,%eax
4341fe:	5e                   	pop    %esi
4341ff:	5b                   	pop    %ebx
434200:	5d                   	pop    %ebp
434201:	c3                   	ret
434202:	2b f7                	sub    %edi,%esi
434204:	c1 fe 02             	sar    $0x2,%esi
434207:	eb f2                	jmp    0x4341fb
434209:	8b ff                	mov    %edi,%edi
43420b:	55                   	push   %ebp
43420c:	8b ec                	mov    %esp,%ebp
43420e:	5d                   	pop    %ebp
43420f:	e9 3a fc ff ff       	jmp    0x433e4e
434214:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
43421a:	8b 40 30             	mov    0x30(%eax),%eax
43421d:	8b 40 68             	mov    0x68(%eax),%eax
434220:	c1 e8 08             	shr    $0x8,%eax
434223:	24 01                	and    $0x1,%al
434225:	c3                   	ret
434226:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
43422c:	8b 40 30             	mov    0x30(%eax),%eax
43422f:	8b 40 10             	mov    0x10(%eax),%eax
434232:	8b 40 08             	mov    0x8(%eax),%eax
434235:	c1 e8 1f             	shr    $0x1f,%eax
434238:	c3                   	ret
434239:	8b ff                	mov    %edi,%edi
43423b:	55                   	push   %ebp
43423c:	8b ec                	mov    %esp,%ebp
43423e:	51                   	push   %ecx
43423f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
434243:	e8 de ff ff ff       	call   0x434226
434248:	84 c0                	test   %al,%al
43424a:	75 09                	jne    0x434255
43424c:	8d 45 fc             	lea    -0x4(%ebp),%eax
43424f:	50                   	push   %eax
434250:	e8 b5 ab ff ff       	call   0x42ee0a
434255:	33 c0                	xor    %eax,%eax
434257:	83 7d fc 01          	cmpl   $0x1,-0x4(%ebp)
43425b:	0f 95 c0             	setne  %al
43425e:	c9                   	leave
43425f:	c3                   	ret
434260:	8b ff                	mov    %edi,%edi
434262:	55                   	push   %ebp
434263:	8b ec                	mov    %esp,%ebp
434265:	51                   	push   %ecx
434266:	51                   	push   %ecx
434267:	53                   	push   %ebx
434268:	56                   	push   %esi
434269:	6a 38                	push   $0x38
43426b:	6a 40                	push   $0x40
43426d:	e8 a8 81 ff ff       	call   0x42c41a
434272:	8b f0                	mov    %eax,%esi
434274:	33 db                	xor    %ebx,%ebx
434276:	89 75 f8             	mov    %esi,-0x8(%ebp)
434279:	59                   	pop    %ecx
43427a:	59                   	pop    %ecx
43427b:	85 f6                	test   %esi,%esi
43427d:	75 04                	jne    0x434283
43427f:	8b f3                	mov    %ebx,%esi
434281:	eb 4b                	jmp    0x4342ce
434283:	8d 86 00 0e 00 00    	lea    0xe00(%esi),%eax
434289:	3b f0                	cmp    %eax,%esi
43428b:	74 41                	je     0x4342ce
43428d:	57                   	push   %edi
43428e:	8d 7e 20             	lea    0x20(%esi),%edi
434291:	8b f0                	mov    %eax,%esi
434293:	53                   	push   %ebx
434294:	68 a0 0f 00 00       	push   $0xfa0
434299:	8d 47 e0             	lea    -0x20(%edi),%eax
43429c:	50                   	push   %eax
43429d:	e8 cd ae ff ff       	call   0x42f16f
4342a2:	83 4f f8 ff          	orl    $0xffffffff,-0x8(%edi)
4342a6:	80 67 0d f8          	andb   $0xf8,0xd(%edi)
4342aa:	89 1f                	mov    %ebx,(%edi)
4342ac:	8d 7f 38             	lea    0x38(%edi),%edi
4342af:	89 5f cc             	mov    %ebx,-0x34(%edi)
4342b2:	8d 47 e0             	lea    -0x20(%edi),%eax
4342b5:	c7 47 d0 00 00 0a 0a 	movl   $0xa0a0000,-0x30(%edi)
4342bc:	c6 47 d4 0a          	movb   $0xa,-0x2c(%edi)
4342c0:	89 5f d6             	mov    %ebx,-0x2a(%edi)
4342c3:	88 5f da             	mov    %bl,-0x26(%edi)
4342c6:	3b c6                	cmp    %esi,%eax
4342c8:	75 c9                	jne    0x434293
4342ca:	8b 75 f8             	mov    -0x8(%ebp),%esi
4342cd:	5f                   	pop    %edi
4342ce:	53                   	push   %ebx
4342cf:	e8 a3 81 ff ff       	call   0x42c477
4342d4:	59                   	pop    %ecx
4342d5:	8b c6                	mov    %esi,%eax
4342d7:	5e                   	pop    %esi
4342d8:	5b                   	pop    %ebx
4342d9:	c9                   	leave
4342da:	c3                   	ret
4342db:	8b ff                	mov    %edi,%edi
4342dd:	55                   	push   %ebp
4342de:	8b ec                	mov    %esp,%ebp
4342e0:	56                   	push   %esi
4342e1:	8b 75 08             	mov    0x8(%ebp),%esi
4342e4:	85 f6                	test   %esi,%esi
4342e6:	74 25                	je     0x43430d
4342e8:	53                   	push   %ebx
4342e9:	8d 9e 00 0e 00 00    	lea    0xe00(%esi),%ebx
4342ef:	57                   	push   %edi
4342f0:	8b fe                	mov    %esi,%edi
4342f2:	3b f3                	cmp    %ebx,%esi
4342f4:	74 0e                	je     0x434304
4342f6:	57                   	push   %edi
4342f7:	ff 15 7c f0 43 00    	call   *0x43f07c
4342fd:	83 c7 38             	add    $0x38,%edi
434300:	3b fb                	cmp    %ebx,%edi
434302:	75 f2                	jne    0x4342f6
434304:	56                   	push   %esi
434305:	e8 6d 81 ff ff       	call   0x42c477
43430a:	59                   	pop    %ecx
43430b:	5f                   	pop    %edi
43430c:	5b                   	pop    %ebx
43430d:	5e                   	pop    %esi
43430e:	5d                   	pop    %ebp
43430f:	c3                   	ret
434310:	6a 10                	push   $0x10
434312:	68 50 27 45 00       	push   $0x452750
434317:	e8 b4 85 fe ff       	call   0x41c8d0
43431c:	81 7d 08 00 20 00 00 	cmpl   $0x2000,0x8(%ebp)
434323:	72 21                	jb     0x434346
434325:	e8 16 23 ff ff       	call   0x426640
43432a:	6a 09                	push   $0x9
43432c:	5e                   	pop    %esi
43432d:	89 30                	mov    %esi,(%eax)
43432f:	e8 3b c7 fe ff       	call   0x420a6f
434334:	8b c6                	mov    %esi,%eax
434336:	8b 4d f0             	mov    -0x10(%ebp),%ecx
434339:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
434340:	59                   	pop    %ecx
434341:	5f                   	pop    %edi
434342:	5e                   	pop    %esi
434343:	5b                   	pop    %ebx
434344:	c9                   	leave
434345:	c3                   	ret
434346:	33 f6                	xor    %esi,%esi
434348:	89 75 e4             	mov    %esi,-0x1c(%ebp)
43434b:	6a 07                	push   $0x7
43434d:	e8 6f 41 ff ff       	call   0x4284c1
434352:	59                   	pop    %ecx
434353:	89 75 fc             	mov    %esi,-0x4(%ebp)
434356:	8b fe                	mov    %esi,%edi
434358:	a1 38 5f 45 00       	mov    0x455f38,%eax
43435d:	89 7d e0             	mov    %edi,-0x20(%ebp)
434360:	39 45 08             	cmp    %eax,0x8(%ebp)
434363:	7c 1f                	jl     0x434384
434365:	39 34 bd 38 5d 45 00 	cmp    %esi,0x455d38(,%edi,4)
43436c:	75 31                	jne    0x43439f
43436e:	e8 ed fe ff ff       	call   0x434260
434373:	89 04 bd 38 5d 45 00 	mov    %eax,0x455d38(,%edi,4)
43437a:	85 c0                	test   %eax,%eax
43437c:	75 14                	jne    0x434392
43437e:	6a 0c                	push   $0xc
434380:	5e                   	pop    %esi
434381:	89 75 e4             	mov    %esi,-0x1c(%ebp)
434384:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
43438b:	e8 15 00 00 00       	call   0x4343a5
434390:	eb a2                	jmp    0x434334
434392:	a1 38 5f 45 00       	mov    0x455f38,%eax
434397:	83 c0 40             	add    $0x40,%eax
43439a:	a3 38 5f 45 00       	mov    %eax,0x455f38
43439f:	47                   	inc    %edi
4343a0:	eb bb                	jmp    0x43435d
4343a2:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4343a5:	6a 07                	push   $0x7
4343a7:	e8 65 41 ff ff       	call   0x428511
4343ac:	59                   	pop    %ecx
4343ad:	c3                   	ret
4343ae:	8b ff                	mov    %edi,%edi
4343b0:	55                   	push   %ebp
4343b1:	8b ec                	mov    %esp,%ebp
4343b3:	8b 45 08             	mov    0x8(%ebp),%eax
4343b6:	8b c8                	mov    %eax,%ecx
4343b8:	83 e0 3f             	and    $0x3f,%eax
4343bb:	c1 f9 06             	sar    $0x6,%ecx
4343be:	6b c0 38             	imul   $0x38,%eax,%eax
4343c1:	03 04 8d 38 5d 45 00 	add    0x455d38(,%ecx,4),%eax
4343c8:	50                   	push   %eax
4343c9:	ff 15 70 f0 43 00    	call   *0x43f070
4343cf:	5d                   	pop    %ebp
4343d0:	c3                   	ret
4343d1:	8b ff                	mov    %edi,%edi
4343d3:	55                   	push   %ebp
4343d4:	8b ec                	mov    %esp,%ebp
4343d6:	51                   	push   %ecx
4343d7:	53                   	push   %ebx
4343d8:	56                   	push   %esi
4343d9:	8b 75 08             	mov    0x8(%ebp),%esi
4343dc:	85 f6                	test   %esi,%esi
4343de:	78 69                	js     0x434449
4343e0:	3b 35 38 5f 45 00    	cmp    0x455f38,%esi
4343e6:	73 61                	jae    0x434449
4343e8:	8b c6                	mov    %esi,%eax
4343ea:	8b de                	mov    %esi,%ebx
4343ec:	83 e0 3f             	and    $0x3f,%eax
4343ef:	c1 eb 06             	shr    $0x6,%ebx
4343f2:	6b c8 38             	imul   $0x38,%eax,%ecx
4343f5:	8b 04 9d 38 5d 45 00 	mov    0x455d38(,%ebx,4),%eax
4343fc:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4343ff:	83 7c 01 18 ff       	cmpl   $0xffffffff,0x18(%ecx,%eax,1)
434404:	75 43                	jne    0x434449
434406:	57                   	push   %edi
434407:	e8 92 50 ff ff       	call   0x42949e
43440c:	8b 7d 0c             	mov    0xc(%ebp),%edi
43440f:	83 f8 01             	cmp    $0x1,%eax
434412:	75 22                	jne    0x434436
434414:	83 ee 00             	sub    $0x0,%esi
434417:	74 14                	je     0x43442d
434419:	83 ee 01             	sub    $0x1,%esi
43441c:	74 0a                	je     0x434428
43441e:	83 ee 01             	sub    $0x1,%esi
434421:	75 13                	jne    0x434436
434423:	57                   	push   %edi
434424:	6a f4                	push   $0xfffffff4
434426:	eb 08                	jmp    0x434430
434428:	57                   	push   %edi
434429:	6a f5                	push   $0xfffffff5
43442b:	eb 03                	jmp    0x434430
43442d:	57                   	push   %edi
43442e:	6a f6                	push   $0xfffffff6
434430:	ff 15 20 f0 43 00    	call   *0x43f020
434436:	8b 04 9d 38 5d 45 00 	mov    0x455d38(,%ebx,4),%eax
43443d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
434440:	89 7c 08 18          	mov    %edi,0x18(%eax,%ecx,1)
434444:	33 c0                	xor    %eax,%eax
434446:	5f                   	pop    %edi
434447:	eb 16                	jmp    0x43445f
434449:	e8 f2 21 ff ff       	call   0x426640
43444e:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
434454:	e8 d4 21 ff ff       	call   0x42662d
434459:	83 20 00             	andl   $0x0,(%eax)
43445c:	83 c8 ff             	or     $0xffffffff,%eax
43445f:	5e                   	pop    %esi
434460:	5b                   	pop    %ebx
434461:	c9                   	leave
434462:	c3                   	ret
434463:	8b ff                	mov    %edi,%edi
434465:	55                   	push   %ebp
434466:	8b ec                	mov    %esp,%ebp
434468:	8b 45 08             	mov    0x8(%ebp),%eax
43446b:	8b c8                	mov    %eax,%ecx
43446d:	83 e0 3f             	and    $0x3f,%eax
434470:	c1 f9 06             	sar    $0x6,%ecx
434473:	6b c0 38             	imul   $0x38,%eax,%eax
434476:	03 04 8d 38 5d 45 00 	add    0x455d38(,%ecx,4),%eax
43447d:	50                   	push   %eax
43447e:	ff 15 74 f0 43 00    	call   *0x43f074
434484:	5d                   	pop    %ebp
434485:	c3                   	ret
434486:	6a 1c                	push   $0x1c
434488:	68 30 27 45 00       	push   $0x452730
43448d:	e8 3e 84 fe ff       	call   0x41c8d0
434492:	6a 07                	push   $0x7
434494:	e8 28 40 ff ff       	call   0x4284c1
434499:	59                   	pop    %ecx
43449a:	83 cb ff             	or     $0xffffffff,%ebx
43449d:	89 5d e4             	mov    %ebx,-0x1c(%ebp)