438287:	33 d2                	xor    %edx,%edx
438289:	89 55 f3             	mov    %edx,-0xd(%ebp)
43828c:	8b 15 40 15 47 00    	mov    0x471540,%edx
438292:	89 55 f8             	mov    %edx,-0x8(%ebp)
438295:	33 d2                	xor    %edx,%edx
438297:	55                   	push   %ebp
438298:	68 eb 82 43 00       	push   $0x4382eb
43829d:	64 ff 32             	push   %fs:(%edx)
4382a0:	64 89 22             	mov    %esp,%fs:(%edx)
4382a3:	8b 15 40 15 47 00    	mov    0x471540,%edx
4382a9:	8b 52 08             	mov    0x8(%edx),%edx
4382ac:	52                   	push   %edx
4382ad:	8b 15 40 15 47 00    	mov    0x471540,%edx
4382b3:	83 c2 10             	add    $0x10,%edx
4382b6:	52                   	push   %edx
4382b7:	8b 15 40 15 47 00    	mov    0x471540,%edx
4382bd:	8b 52 0c             	mov    0xc(%edx),%edx
4382c0:	8b 0d 40 15 47 00    	mov    0x471540,%ecx
4382c6:	92                   	xchg   %eax,%edx
4382c7:	e8 38 f5 ff ff       	call   0x437804
4382cc:	33 c0                	xor    %eax,%eax
4382ce:	5a                   	pop    %edx
4382cf:	59                   	pop    %ecx
4382d0:	59                   	pop    %ecx
4382d1:	64 89 10             	mov    %edx,%fs:(%eax)
4382d4:	68 f2 82 43 00       	push   $0x4382f2
4382d9:	83 3d 40 15 47 00 00 	cmpl   $0x0,0x471540
4382e0:	75 08                	jne    0x4382ea
4382e2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4382e5:	a3 40 15 47 00       	mov    %eax,0x471540
4382ea:	c3                   	ret
4382eb:	e9 98 bd fc ff       	jmp    0x404088
4382f0:	eb e7                	jmp    0x4382d9
4382f2:	33 c0                	xor    %eax,%eax
4382f4:	5a                   	pop    %edx
4382f5:	59                   	pop    %ecx
4382f6:	59                   	pop    %ecx
4382f7:	64 89 10             	mov    %edx,%fs:(%eax)
4382fa:	68 4e 83 43 00       	push   $0x43834e
4382ff:	a1 3c 15 47 00       	mov    0x47153c,%eax
438304:	e8 eb b5 fc ff       	call   0x4038f4
438309:	33 c0                	xor    %eax,%eax
43830b:	a3 3c 15 47 00       	mov    %eax,0x47153c
438310:	83 3d 40 15 47 00 00 	cmpl   $0x0,0x471540
438317:	74 26                	je     0x43833f
438319:	a1 40 15 47 00       	mov    0x471540,%eax
43831e:	c6 40 05 00          	movb   $0x0,0x5(%eax)
438322:	8b 45 f3             	mov    -0xd(%ebp),%eax
438325:	50                   	push   %eax
438326:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
43832a:	50                   	push   %eax
43832b:	a1 40 15 47 00       	mov    0x471540,%eax
438330:	8b 50 08             	mov    0x8(%eax),%edx
438333:	8b 4d ef             	mov    -0x11(%ebp),%ecx
438336:	a1 40 15 47 00       	mov    0x471540,%eax
43833b:	8b 18                	mov    (%eax),%ebx
43833d:	ff 13                	call   *(%ebx)
43833f:	33 c0                	xor    %eax,%eax
438341:	a3 14 15 47 00       	mov    %eax,0x471514
438346:	c3                   	ret
438347:	e9 3c bd fc ff       	jmp    0x404088
43834c:	eb b1                	jmp    0x4382ff
43834e:	33 c0                	xor    %eax,%eax
438350:	5a                   	pop    %edx
438351:	59                   	pop    %ecx
438352:	59                   	pop    %ecx
438353:	64 89 10             	mov    %edx,%fs:(%eax)
438356:	68 c0 83 43 00       	push   $0x4383c0
43835b:	33 c0                	xor    %eax,%eax
43835d:	a3 10 15 47 00       	mov    %eax,0x471510
438362:	83 3d 40 15 47 00 00 	cmpl   $0x0,0x471540
438369:	74 46                	je     0x4383b1
43836b:	a1 40 15 47 00       	mov    0x471540,%eax
438370:	8b 15 8c 45 43 00    	mov    0x43458c,%edx
438376:	e8 05 b7 fc ff       	call   0x403a80
43837b:	84 c0                	test   %al,%al
43837d:	75 28                	jne    0x4383a7
43837f:	a1 40 15 47 00       	mov    0x471540,%eax
438384:	8b 15 90 07 46 00    	mov    0x460790,%edx
43838a:	e8 f1 b6 fc ff       	call   0x403a80
43838f:	84 c0                	test   %al,%al
438391:	75 14                	jne    0x4383a7
438393:	a1 40 15 47 00       	mov    0x471540,%eax
438398:	8b 15 e4 46 43 00    	mov    0x4346e4,%edx
43839e:	e8 dd b6 fc ff       	call   0x403a80
4383a3:	84 c0                	test   %al,%al
4383a5:	74 0a                	je     0x4383b1
4383a7:	a1 40 15 47 00       	mov    0x471540,%eax
4383ac:	e8 43 b5 fc ff       	call   0x4038f4
4383b1:	c6 05 30 15 47 00 00 	movb   $0x0,0x471530
4383b8:	c3                   	ret
4383b9:	e9 ca bc fc ff       	jmp    0x404088
4383be:	eb 9b                	jmp    0x43835b
4383c0:	5b                   	pop    %ebx
4383c1:	8b e5                	mov    %ebp,%esp
4383c3:	5d                   	pop    %ebp
4383c4:	c3                   	ret
4383c5:	8d 40 00             	lea    0x0(%eax),%eax
4383c8:	83 3d 14 15 47 00 00 	cmpl   $0x0,0x471514
4383cf:	74 07                	je     0x4383d8
4383d1:	33 c0                	xor    %eax,%eax
4383d3:	e8 cc fc ff ff       	call   0x4380a4
4383d8:	33 c0                	xor    %eax,%eax
4383da:	a3 10 15 47 00       	mov    %eax,0x471510
4383df:	c3                   	ret
4383e0:	53                   	push   %ebx
4383e1:	56                   	push   %esi
4383e2:	ff 70 04             	push   0x4(%eax)
4383e5:	ff 30                	push   (%eax)
4383e7:	e8 74 ee fc ff       	call   0x407260
4383ec:	8b d8                	mov    %eax,%ebx
4383ee:	33 f6                	xor    %esi,%esi
4383f0:	85 db                	test   %ebx,%ebx
4383f2:	74 19                	je     0x43840d
4383f4:	8b c3                	mov    %ebx,%eax
4383f6:	e8 01 e5 ff ff       	call   0x4368fc
4383fb:	8b f0                	mov    %eax,%esi
4383fd:	85 f6                	test   %esi,%esi
4383ff:	75 0c                	jne    0x43840d
438401:	53                   	push   %ebx
438402:	e8 61 eb fc ff       	call   0x406f68
438407:	8b d8                	mov    %eax,%ebx
438409:	85 db                	test   %ebx,%ebx
43840b:	75 e7                	jne    0x4383f4
43840d:	8b c6                	mov    %esi,%eax
43840f:	5e                   	pop    %esi
438410:	5b                   	pop    %ebx
438411:	c3                   	ret
438412:	8b c0                	mov    %eax,%eax
438414:	53                   	push   %ebx
438415:	56                   	push   %esi
438416:	57                   	push   %edi
438417:	55                   	push   %ebp
438418:	83 c4 f8             	add    $0xfffffff8,%esp
43841b:	8b da                	mov    %edx,%ebx
43841d:	8b f8                	mov    %eax,%edi
43841f:	33 f6                	xor    %esi,%esi
438421:	8b c7                	mov    %edi,%eax
438423:	e8 b8 ff ff ff       	call   0x4383e0
438428:	8b e8                	mov    %eax,%ebp
43842a:	85 ed                	test   %ebp,%ebp
43842c:	74 26                	je     0x438454
43842e:	8b f5                	mov    %ebp,%esi
438430:	6a 00                	push   $0x0
438432:	6a 00                	push   $0x0
438434:	8d 4c 24 08          	lea    0x8(%esp),%ecx
438438:	8b d7                	mov    %edi,%edx
43843a:	8b c5                	mov    %ebp,%eax
43843c:	e8 9b 15 00 00       	call   0x4399dc
438441:	8d 54 24 08          	lea    0x8(%esp),%edx
438445:	8b cb                	mov    %ebx,%ecx
438447:	8b c5                	mov    %ebp,%eax
438449:	e8 62 65 00 00       	call   0x43e9b0
43844e:	85 c0                	test   %eax,%eax
438450:	74 02                	je     0x438454
438452:	8b f0                	mov    %eax,%esi
438454:	8b c6                	mov    %esi,%eax
438456:	59                   	pop    %ecx
438457:	5a                   	pop    %edx
438458:	5d                   	pop    %ebp
438459:	5f                   	pop    %edi
43845a:	5e                   	pop    %esi
43845b:	5b                   	pop    %ebx
43845c:	c3                   	ret
43845d:	8d 40 00             	lea    0x0(%eax),%eax
438460:	53                   	push   %ebx
438461:	56                   	push   %esi
438462:	8b f2                	mov    %edx,%esi
438464:	8b d8                	mov    %eax,%ebx
438466:	83 3b 00             	cmpl   $0x0,(%ebx)
438469:	75 0e                	jne    0x438479
43846b:	b2 01                	mov    $0x1,%dl
43846d:	a1 c4 57 41 00       	mov    0x4157c4,%eax
438472:	e8 4d b4 fc ff       	call   0x4038c4
438477:	89 03                	mov    %eax,(%ebx)
438479:	8b 03                	mov    (%ebx),%eax
43847b:	8b d6                	mov    %esi,%edx
43847d:	e8 8e f5 fd ff       	call   0x417a10
438482:	5e                   	pop    %esi
438483:	5b                   	pop    %ebx
438484:	c3                   	ret
438485:	8d 40 00             	lea    0x0(%eax),%eax
438488:	53                   	push   %ebx
438489:	8b d8                	mov    %eax,%ebx
43848b:	8b 03                	mov    (%ebx),%eax
43848d:	e8 22 f8 fd ff       	call   0x417cb4
438492:	8b 03                	mov    (%ebx),%eax
438494:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
438498:	75 0b                	jne    0x4384a5
43849a:	8b 03                	mov    (%ebx),%eax
43849c:	e8 53 b4 fc ff       	call   0x4038f4
4384a1:	33 c0                	xor    %eax,%eax
4384a3:	89 03                	mov    %eax,(%ebx)
4384a5:	5b                   	pop    %ebx
4384a6:	c3                   	ret
4384a7:	90                   	nop
4384a8:	53                   	push   %ebx
4384a9:	56                   	push   %esi
4384aa:	57                   	push   %edi
4384ab:	83 c4 f8             	add    $0xfffffff8,%esp
4384ae:	8b f9                	mov    %ecx,%edi
4384b0:	8b f2                	mov    %edx,%esi
4384b2:	8b d8                	mov    %eax,%ebx
4384b4:	54                   	push   %esp
4384b5:	53                   	push   %ebx
4384b6:	e8 8d e7 fc ff       	call   0x406c48
4384bb:	6a 00                	push   $0x0
4384bd:	8b 44 24 08          	mov    0x8(%esp),%eax
4384c1:	2b c7                	sub    %edi,%eax
4384c3:	50                   	push   %eax
4384c4:	8b 44 24 08          	mov    0x8(%esp),%eax
4384c8:	2b c6                	sub    %esi,%eax
4384ca:	50                   	push   %eax
4384cb:	53                   	push   %ebx
4384cc:	e8 47 e8 fc ff       	call   0x406d18
4384d1:	59                   	pop    %ecx
4384d2:	5a                   	pop    %edx
4384d3:	5f                   	pop    %edi
4384d4:	5e                   	pop    %esi
4384d5:	5b                   	pop    %ebx
4384d6:	c3                   	ret
4384d7:	90                   	nop
4384d8:	55                   	push   %ebp
4384d9:	8b ec                	mov    %esp,%ebp
4384db:	83 c4 f0             	add    $0xfffffff0,%esp
4384de:	a1 44 15 47 00       	mov    0x471544,%eax
4384e3:	e8 f8 f9 fd ff       	call   0x417ee0
4384e8:	89 45 f8             	mov    %eax,-0x8(%ebp)
4384eb:	33 c0                	xor    %eax,%eax
4384ed:	55                   	push   %ebp
4384ee:	68 88 85 43 00       	push   $0x438588
4384f3:	64 ff 30             	push   %fs:(%eax)
4384f6:	64 89 20             	mov    %esp,%fs:(%eax)
4384f9:	8b 45 f8             	mov    -0x8(%ebp),%eax
4384fc:	8b 40 08             	mov    0x8(%eax),%eax
4384ff:	48                   	dec    %eax
438500:	85 c0                	test   %eax,%eax
438502:	7c 6c                	jl     0x438570
438504:	40                   	inc    %eax
438505:	89 45 f4             	mov    %eax,-0xc(%ebp)
438508:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
43850f:	8b 55 fc             	mov    -0x4(%ebp),%edx
438512:	8b 45 f8             	mov    -0x8(%ebp),%eax
438515:	e8 56 f6 fd ff       	call   0x417b70
43851a:	89 45 f0             	mov    %eax,-0x10(%ebp)
43851d:	8b 45 f0             	mov    -0x10(%ebp),%eax
438520:	e8 1f b8 fe ff       	call   0x423d44
438525:	84 c0                	test   %al,%al
438527:	74 3f                	je     0x438568
438529:	33 c0                	xor    %eax,%eax
43852b:	55                   	push   %ebp
43852c:	68 61 85 43 00       	push   $0x438561
438531:	64 ff 30             	push   %fs:(%eax)
438534:	64 89 20             	mov    %esp,%fs:(%eax)
438537:	8b 45 f0             	mov    -0x10(%ebp),%eax
43853a:	e8 d5 01 00 00       	call   0x438714
43853f:	e8 d0 bc fc ff       	call   0x404214
438544:	e8 cb bc fc ff       	call   0x404214
438549:	eb 44                	jmp    0x43858f
43854b:	33 c0                	xor    %eax,%eax
43854d:	5a                   	pop    %edx
43854e:	59                   	pop    %ecx
43854f:	59                   	pop    %ecx
438550:	64 89 10             	mov    %edx,%fs:(%eax)
438553:	68 68 85 43 00       	push   $0x438568
438558:	8b 45 f0             	mov    -0x10(%ebp),%eax
43855b:	e8 40 b8 fe ff       	call   0x423da0
438560:	c3                   	ret
438561:	e9 22 bb fc ff       	jmp    0x404088
438566:	eb f0                	jmp    0x438558
438568:	ff 45 fc             	incl   -0x4(%ebp)
43856b:	ff 4d f4             	decl   -0xc(%ebp)
43856e:	75 9f                	jne    0x43850f
438570:	33 c0                	xor    %eax,%eax
438572:	5a                   	pop    %edx
438573:	59                   	pop    %ecx
438574:	59                   	pop    %ecx
438575:	64 89 10             	mov    %edx,%fs:(%eax)
438578:	68 8f 85 43 00       	push   $0x43858f
43857d:	a1 44 15 47 00       	mov    0x471544,%eax
438582:	e8 bd f9 fd ff       	call   0x417f44
438587:	c3                   	ret
438588:	e9 fb ba fc ff       	jmp    0x404088
43858d:	eb ee                	jmp    0x43857d
43858f:	8b e5                	mov    %ebp,%esp
438591:	5d                   	pop    %ebp
438592:	c3                   	ret
438593:	90                   	nop
438594:	55                   	push   %ebp
438595:	8b ec                	mov    %esp,%ebp
438597:	83 c4 f4             	add    $0xfffffff4,%esp
43859a:	a1 44 15 47 00       	mov    0x471544,%eax
43859f:	e8 3c f9 fd ff       	call   0x417ee0
4385a4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4385a7:	33 c0                	xor    %eax,%eax
4385a9:	55                   	push   %ebp
4385aa:	68 32 86 43 00       	push   $0x438632
4385af:	64 ff 30             	push   %fs:(%eax)
4385b2:	64 89 20             	mov    %esp,%fs:(%eax)
4385b5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4385b8:	8b 40 08             	mov    0x8(%eax),%eax
4385bb:	48                   	dec    %eax
4385bc:	83 f8 00             	cmp    $0x0,%eax
4385bf:	7c 59                	jl     0x43861a
4385c1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4385c4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4385c7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4385ca:	e8 a1 f5 fd ff       	call   0x417b70
4385cf:	89 45 f4             	mov    %eax,-0xc(%ebp)
4385d2:	8b 45 f4             	mov    -0xc(%ebp),%eax
4385d5:	e8 6a b7 fe ff       	call   0x423d44
4385da:	84 c0                	test   %al,%al
4385dc:	74 33                	je     0x438611
4385de:	33 c0                	xor    %eax,%eax
4385e0:	55                   	push   %ebp
4385e1:	68 0a 86 43 00       	push   $0x43860a
4385e6:	64 ff 30             	push   %fs:(%eax)
4385e9:	64 89 20             	mov    %esp,%fs:(%eax)
4385ec:	8b 45 f4             	mov    -0xc(%ebp),%eax
4385ef:	e8 20 01 00 00       	call   0x438714
4385f4:	33 c0                	xor    %eax,%eax
4385f6:	5a                   	pop    %edx
4385f7:	59                   	pop    %ecx
4385f8:	59                   	pop    %ecx
4385f9:	64 89 10             	mov    %edx,%fs:(%eax)
4385fc:	68 11 86 43 00       	push   $0x438611
438601:	8b 45 f4             	mov    -0xc(%ebp),%eax
438604:	e8 97 b7 fe ff       	call   0x423da0
438609:	c3                   	ret
43860a:	e9 79 ba fc ff       	jmp    0x404088
43860f:	eb f0                	jmp    0x438601
438611:	ff 4d fc             	decl   -0x4(%ebp)
438614:	83 7d fc ff          	cmpl   $0xffffffff,-0x4(%ebp)
438618:	75 aa                	jne    0x4385c4
43861a:	33 c0                	xor    %eax,%eax
43861c:	5a                   	pop    %edx
43861d:	59                   	pop    %ecx
43861e:	59                   	pop    %ecx
43861f:	64 89 10             	mov    %edx,%fs:(%eax)
438622:	68 39 86 43 00       	push   $0x438639
438627:	a1 44 15 47 00       	mov    0x471544,%eax
43862c:	e8 13 f9 fd ff       	call   0x417f44
438631:	c3                   	ret
438632:	e9 51 ba fc ff       	jmp    0x404088
438637:	eb ee                	jmp    0x438627
438639:	8b e5                	mov    %ebp,%esp
43863b:	5d                   	pop    %ebp
43863c:	c3                   	ret
43863d:	8d 40 00             	lea    0x0(%eax),%eax
438640:	53                   	push   %ebx