4501c2:	8b 53 04             	mov    0x4(%ebx),%edx
4501c5:	8b 52 44             	mov    0x44(%edx),%edx
4501c8:	83 c2 0f             	add    $0xf,%edx
4501cb:	3b c2                	cmp    %edx,%eax
4501cd:	7d 0e                	jge    0x4501dd
4501cf:	8b 45 08             	mov    0x8(%ebp),%eax
4501d2:	8b 40 f4             	mov    -0xc(%eax),%eax
4501d5:	c7 00 14 00 00 00    	movl   $0x14,(%eax)
4501db:	eb 0c                	jmp    0x4501e9
4501dd:	8b 45 08             	mov    0x8(%ebp),%eax
4501e0:	8b 40 f4             	mov    -0xc(%eax),%eax
4501e3:	c7 00 02 00 00 00    	movl   $0x2,(%eax)
4501e9:	8b 45 08             	mov    0x8(%ebp),%eax
4501ec:	83 78 f0 00          	cmpl   $0x0,-0x10(%eax)
4501f0:	75 1c                	jne    0x45020e
4501f2:	8b c3                	mov    %ebx,%eax
4501f4:	e8 6b f6 ff ff       	call   0x44f864
4501f9:	85 c0                	test   %eax,%eax
4501fb:	74 11                	je     0x45020e
4501fd:	8b 45 08             	mov    0x8(%ebp),%eax
450200:	50                   	push   %eax
450201:	8b c3                	mov    %ebx,%eax
450203:	e8 5c f6 ff ff       	call   0x44f864
450208:	e8 ff fd ff ff       	call   0x45000c
45020d:	59                   	pop    %ecx
45020e:	8b 45 08             	mov    0x8(%ebp),%eax
450211:	83 78 f0 00          	cmpl   $0x0,-0x10(%eax)
450215:	75 1c                	jne    0x450233
450217:	8b c3                	mov    %ebx,%eax
450219:	e8 6e f6 ff ff       	call   0x44f88c
45021e:	85 c0                	test   %eax,%eax
450220:	74 11                	je     0x450233
450222:	8b 45 08             	mov    0x8(%ebp),%eax
450225:	50                   	push   %eax
450226:	8b c3                	mov    %ebx,%eax
450228:	e8 5f f6 ff ff       	call   0x44f88c
45022d:	e8 da fd ff ff       	call   0x45000c
450232:	59                   	pop    %ecx
450233:	5f                   	pop    %edi
450234:	5e                   	pop    %esi
450235:	5b                   	pop    %ebx
450236:	5d                   	pop    %ebp
450237:	c3                   	ret
450238:	55                   	push   %ebp
450239:	8b ec                	mov    %esp,%ebp
45023b:	83 c4 e8             	add    $0xffffffe8,%esp
45023e:	53                   	push   %ebx
45023f:	56                   	push   %esi
450240:	57                   	push   %edi
450241:	8b f8                	mov    %eax,%edi
450243:	8b 45 08             	mov    0x8(%ebp),%eax
450246:	8b 40 f8             	mov    -0x8(%eax),%eax
450249:	8b 40 14             	mov    0x14(%eax),%eax
45024c:	e8 bb 9e ff ff       	call   0x44a10c
450251:	8b f0                	mov    %eax,%esi
450253:	4e                   	dec    %esi
450254:	83 fe 00             	cmp    $0x0,%esi
450257:	7c 68                	jl     0x4502c1
450259:	8b 45 08             	mov    0x8(%ebp),%eax
45025c:	8b 40 f8             	mov    -0x8(%eax),%eax
45025f:	8b 40 14             	mov    0x14(%eax),%eax
450262:	8b d6                	mov    %esi,%edx
450264:	e8 67 9e ff ff       	call   0x44a0d0
450269:	8b d8                	mov    %eax,%ebx
45026b:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
45026f:	74 4a                	je     0x4502bb
450271:	8b c3                	mov    %ebx,%eax
450273:	8b 15 b8 2c 44 00    	mov    0x442cb8,%edx
450279:	e8 ce 31 fb ff       	call   0x40344c
45027e:	84 c0                	test   %al,%al
450280:	74 09                	je     0x45028b
450282:	80 bb a6 01 00 00 00 	cmpb   $0x0,0x1a6(%ebx)
450289:	74 30                	je     0x4502bb
45028b:	8b 57 04             	mov    0x4(%edi),%edx
45028e:	2b 53 44             	sub    0x44(%ebx),%edx
450291:	8b 07                	mov    (%edi),%eax
450293:	2b 43 40             	sub    0x40(%ebx),%eax
450296:	8d 4d f8             	lea    -0x8(%ebp),%ecx
450299:	e8 4e 6e fc ff       	call   0x4170ec
45029e:	ff 75 fc             	push   -0x4(%ebp)
4502a1:	ff 75 f8             	push   -0x8(%ebp)
4502a4:	8d 55 e8             	lea    -0x18(%ebp),%edx
4502a7:	8b c3                	mov    %ebx,%eax
4502a9:	8b 08                	mov    (%eax),%ecx
4502ab:	ff 51 44             	call   *0x44(%ecx)
4502ae:	8d 45 e8             	lea    -0x18(%ebp),%eax
4502b1:	50                   	push   %eax
4502b2:	e8 ad 67 fb ff       	call   0x406a64
4502b7:	85 c0                	test   %eax,%eax
4502b9:	75 08                	jne    0x4502c3
4502bb:	4e                   	dec    %esi
4502bc:	83 fe ff             	cmp    $0xffffffff,%esi
4502bf:	75 98                	jne    0x450259
4502c1:	33 db                	xor    %ebx,%ebx
4502c3:	8b c3                	mov    %ebx,%eax
4502c5:	5f                   	pop    %edi
4502c6:	5e                   	pop    %esi
4502c7:	5b                   	pop    %ebx
4502c8:	8b e5                	mov    %ebp,%esp
4502ca:	5d                   	pop    %ebp
4502cb:	c3                   	ret
4502cc:	55                   	push   %ebp
4502cd:	8b ec                	mov    %esp,%ebp
4502cf:	83 c4 f0             	add    $0xfffffff0,%esp
4502d2:	53                   	push   %ebx
4502d3:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4502d6:	89 55 fc             	mov    %edx,-0x4(%ebp)
4502d9:	89 45 f8             	mov    %eax,-0x8(%ebp)
4502dc:	33 c0                	xor    %eax,%eax
4502de:	89 45 f0             	mov    %eax,-0x10(%ebp)
4502e1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4502e4:	33 d2                	xor    %edx,%edx
4502e6:	89 10                	mov    %edx,(%eax)
4502e8:	55                   	push   %ebp
4502e9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4502ec:	e8 47 ff ff ff       	call   0x450238
4502f1:	59                   	pop    %ecx
4502f2:	8b d8                	mov    %eax,%ebx
4502f4:	85 db                	test   %ebx,%ebx
4502f6:	74 2c                	je     0x450324
4502f8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4502fb:	8b 40 14             	mov    0x14(%eax),%eax
4502fe:	3b 83 a0 00 00 00    	cmp    0xa0(%ebx),%eax
450304:	75 1e                	jne    0x450324
450306:	8b d3                	mov    %ebx,%edx
450308:	8b 45 f8             	mov    -0x8(%ebp),%eax
45030b:	e8 c8 f7 ff ff       	call   0x44fad8
450310:	89 45 f0             	mov    %eax,-0x10(%ebp)
450313:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
450317:	74 30                	je     0x450349
450319:	8b 45 f4             	mov    -0xc(%ebp),%eax
45031c:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
450322:	eb 25                	jmp    0x450349
450324:	8b 45 f8             	mov    -0x8(%ebp),%eax
450327:	8b 40 64             	mov    0x64(%eax),%eax
45032a:	e8 5d f5 ff ff       	call   0x44f88c
45032f:	85 c0                	test   %eax,%eax
450331:	74 16                	je     0x450349
450333:	85 db                	test   %ebx,%ebx
450335:	75 12                	jne    0x450349
450337:	55                   	push   %ebp
450338:	8b 45 f8             	mov    -0x8(%ebp),%eax
45033b:	8b 40 64             	mov    0x64(%eax),%eax
45033e:	e8 49 f5 ff ff       	call   0x44f88c
450343:	e8 c4 fc ff ff       	call   0x45000c
450348:	59                   	pop    %ecx
450349:	8b 45 f0             	mov    -0x10(%ebp),%eax
45034c:	5b                   	pop    %ebx
45034d:	8b e5                	mov    %ebp,%esp
45034f:	5d                   	pop    %ebp
450350:	c3                   	ret
450351:	8d 40 00             	lea    0x0(%eax),%eax
450354:	55                   	push   %ebp
450355:	8b ec                	mov    %esp,%ebp
450357:	51                   	push   %ecx
450358:	53                   	push   %ebx
450359:	56                   	push   %esi
45035a:	8b d8                	mov    %eax,%ebx
45035c:	8b c3                	mov    %ebx,%eax
45035e:	e8 ed 3c fb ff       	call   0x404050
450363:	8d 55 fc             	lea    -0x4(%ebp),%edx
450366:	8b 45 08             	mov    0x8(%ebp),%eax
450369:	8b 40 fc             	mov    -0x4(%eax),%eax
45036c:	b9 04 00 00 00       	mov    $0x4,%ecx
450371:	8b 30                	mov    (%eax),%esi
450373:	ff 56 0c             	call   *0xc(%esi)
450376:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45037a:	7e 1a                	jle    0x450396
45037c:	8b c3                	mov    %ebx,%eax
45037e:	8b 55 fc             	mov    -0x4(%ebp),%edx
450381:	e8 16 43 fb ff       	call   0x40469c
450386:	8b 13                	mov    (%ebx),%edx
450388:	8b 45 08             	mov    0x8(%ebp),%eax
45038b:	8b 40 fc             	mov    -0x4(%eax),%eax
45038e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
450391:	8b 18                	mov    (%eax),%ebx
450393:	ff 53 0c             	call   *0xc(%ebx)
450396:	5e                   	pop    %esi
450397:	5b                   	pop    %ebx
450398:	59                   	pop    %ecx
450399:	5d                   	pop    %ebp
45039a:	c3                   	ret
45039b:	90                   	nop
45039c:	55                   	push   %ebp
45039d:	8b ec                	mov    %esp,%ebp
45039f:	83 c4 e0             	add    $0xffffffe0,%esp
4503a2:	53                   	push   %ebx
4503a3:	56                   	push   %esi
4503a4:	57                   	push   %edi
4503a5:	33 c9                	xor    %ecx,%ecx
4503a7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4503aa:	89 55 fc             	mov    %edx,-0x4(%ebp)
4503ad:	89 45 f8             	mov    %eax,-0x8(%ebp)
4503b0:	33 c0                	xor    %eax,%eax
4503b2:	55                   	push   %ebp
4503b3:	68 94 05 45 00       	push   $0x450594
4503b8:	64 ff 30             	push   %fs:(%eax)
4503bb:	64 89 20             	mov    %esp,%fs:(%eax)
4503be:	8b 45 f8             	mov    -0x8(%ebp),%eax
4503c1:	8b 50 64             	mov    0x64(%eax),%edx
4503c4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4503c7:	e8 a0 06 00 00       	call   0x450a6c
4503cc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4503cf:	e8 94 f6 ff ff       	call   0x44fa68
4503d4:	33 d2                	xor    %edx,%edx
4503d6:	55                   	push   %ebp
4503d7:	68 77 05 45 00       	push   $0x450577
4503dc:	64 ff 32             	push   %fs:(%edx)
4503df:	64 89 22             	mov    %esp,%fs:(%edx)
4503e2:	8d 55 e4             	lea    -0x1c(%ebp),%edx
4503e5:	b9 04 00 00 00       	mov    $0x4,%ecx
4503ea:	8b 45 fc             	mov    -0x4(%ebp),%eax
4503ed:	8b 18                	mov    (%eax),%ebx
4503ef:	ff 53 0c             	call   *0xc(%ebx)
4503f2:	8d 55 e0             	lea    -0x20(%ebp),%edx
4503f5:	b9 04 00 00 00       	mov    $0x4,%ecx
4503fa:	8b 45 fc             	mov    -0x4(%ebp),%eax
4503fd:	8b 18                	mov    (%eax),%ebx
4503ff:	ff 53 0c             	call   *0xc(%ebx)
450402:	8b 7d e0             	mov    -0x20(%ebp),%edi
450405:	4f                   	dec    %edi
450406:	85 ff                	test   %edi,%edi
450408:	7c 55                	jl     0x45045f
45040a:	47                   	inc    %edi
45040b:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
450412:	55                   	push   %ebp
450413:	8d 45 f4             	lea    -0xc(%ebp),%eax
450416:	e8 39 ff ff ff       	call   0x450354
45041b:	59                   	pop    %ecx
45041c:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
450420:	74 37                	je     0x450459
450422:	8d 4d f0             	lea    -0x10(%ebp),%ecx
450425:	8b 45 f8             	mov    -0x8(%ebp),%eax
450428:	8b 40 14             	mov    0x14(%eax),%eax
45042b:	8b 55 f4             	mov    -0xc(%ebp),%edx
45042e:	66 be b9 ff          	mov    $0xffb9,%si
450432:	e8 85 30 fb ff       	call   0x4034bc
450437:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
45043b:	74 1c                	je     0x450459
45043d:	33 d2                	xor    %edx,%edx
45043f:	8b 45 f0             	mov    -0x10(%ebp),%eax
450442:	e8 d9 66 ff ff       	call   0x446b20
450447:	6a 00                	push   $0x0
450449:	8b 45 f8             	mov    -0x8(%ebp),%eax
45044c:	8b 50 14             	mov    0x14(%eax),%edx
45044f:	33 c9                	xor    %ecx,%ecx
450451:	8b 45 f0             	mov    -0x10(%ebp),%eax
450454:	e8 9b 74 ff ff       	call   0x4478f4
450459:	ff 45 e4             	incl   -0x1c(%ebp)
45045c:	4f                   	dec    %edi
45045d:	75 b3                	jne    0x450412
45045f:	8b 45 f8             	mov    -0x8(%ebp),%eax
450462:	8d 50 68             	lea    0x68(%eax),%edx
450465:	b9 04 00 00 00       	mov    $0x4,%ecx
45046a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45046d:	8b 18                	mov    (%eax),%ebx
45046f:	ff 53 0c             	call   *0xc(%ebx)
450472:	33 c0                	xor    %eax,%eax
450474:	89 45 e8             	mov    %eax,-0x18(%ebp)
450477:	33 f6                	xor    %esi,%esi
450479:	8d 55 ec             	lea    -0x14(%ebp),%edx
45047c:	b9 04 00 00 00       	mov    $0x4,%ecx
450481:	8b 45 fc             	mov    -0x4(%ebp),%eax
450484:	8b 18                	mov    (%eax),%ebx
450486:	ff 53 0c             	call   *0xc(%ebx)
450489:	8b 45 ec             	mov    -0x14(%ebp),%eax
45048c:	3b 05 90 9c 46 00    	cmp    0x469c90,%eax
450492:	0f 84 c9 00 00 00    	je     0x450561
450498:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45049b:	b2 01                	mov    $0x1,%dl
45049d:	a1 78 37 44 00       	mov    0x443778,%eax
4504a2:	e8 99 ed ff ff       	call   0x44f240
4504a7:	8b d8                	mov    %eax,%ebx
4504a9:	8d 53 10             	lea    0x10(%ebx),%edx
4504ac:	b9 01 00 00 00       	mov    $0x1,%ecx
4504b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4504b4:	8b 38                	mov    (%eax),%edi
4504b6:	ff 57 0c             	call   *0xc(%edi)
4504b9:	8d 53 20             	lea    0x20(%ebx),%edx
4504bc:	b9 04 00 00 00       	mov    $0x4,%ecx
4504c1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4504c4:	8b 38                	mov    (%eax),%edi
4504c6:	ff 57 0c             	call   *0xc(%edi)
4504c9:	55                   	push   %ebp
4504ca:	8d 45 f4             	lea    -0xc(%ebp),%eax
4504cd:	e8 82 fe ff ff       	call   0x450354
4504d2:	59                   	pop    %ecx
4504d3:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4504d7:	74 17                	je     0x4504f0
4504d9:	8b 55 f4             	mov    -0xc(%ebp),%edx
4504dc:	8b c3                	mov    %ebx,%eax
4504de:	e8 7d f0 ff ff       	call   0x44f560
4504e3:	84 c0                	test   %al,%al
4504e5:	75 09                	jne    0x4504f0
4504e7:	8b c3                	mov    %ebx,%eax
4504e9:	e8 d2 2d fb ff       	call   0x4032c0
4504ee:	eb 89                	jmp    0x450479
4504f0:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4504f4:	75 08                	jne    0x4504fe
4504f6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4504f9:	89 58 64             	mov    %ebx,0x64(%eax)
4504fc:	eb 56                	jmp    0x450554
4504fe:	8b 45 ec             	mov    -0x14(%ebp),%eax
450501:	3b 45 e8             	cmp    -0x18(%ebp),%eax
450504:	75 0e                	jne    0x450514
450506:	89 5e 0c             	mov    %ebx,0xc(%esi)
450509:	89 73 18             	mov    %esi,0x18(%ebx)
45050c:	8b 46 14             	mov    0x14(%esi),%eax
45050f:	89 43 14             	mov    %eax,0x14(%ebx)
450512:	eb 40                	jmp    0x450554
450514:	8b 45 ec             	mov    -0x14(%ebp),%eax
450517:	3b 45 e8             	cmp    -0x18(%ebp),%eax
45051a:	7e 08                	jle    0x450524
45051c:	89 5e 08             	mov    %ebx,0x8(%esi)
45051f:	89 73 14             	mov    %esi,0x14(%ebx)
450522:	eb 30                	jmp    0x450554
450524:	8b 45 ec             	mov    -0x14(%ebp),%eax
450527:	3b 45 e8             	cmp    -0x18(%ebp),%eax
45052a:	7d 28                	jge    0x450554
45052c:	8b c6                	mov    %esi,%eax
45052e:	8b 7d e8             	mov    -0x18(%ebp),%edi
450531:	2b 7d ec             	sub    -0x14(%ebp),%edi
450534:	85 ff                	test   %edi,%edi
450536:	7e 10                	jle    0x450548
450538:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
45053f:	8b 40 14             	mov    0x14(%eax),%eax
450542:	ff 45 e4             	incl   -0x1c(%ebp)
450545:	4f                   	dec    %edi
450546:	75 f7                	jne    0x45053f
450548:	89 58 0c             	mov    %ebx,0xc(%eax)
45054b:	89 43 18             	mov    %eax,0x18(%ebx)
45054e:	8b 40 14             	mov    0x14(%eax),%eax
450551:	89 43 14             	mov    %eax,0x14(%ebx)
450554:	8b 45 ec             	mov    -0x14(%ebp),%eax
450557:	89 45 e8             	mov    %eax,-0x18(%ebp)
45055a:	8b f3                	mov    %ebx,%esi
45055c:	e9 18 ff ff ff       	jmp    0x450479
450561:	33 c0                	xor    %eax,%eax
450563:	5a                   	pop    %edx
450564:	59                   	pop    %ecx
450565:	59                   	pop    %ecx
450566:	64 89 10             	mov    %edx,%fs:(%eax)
450569:	68 7e 05 45 00       	push   $0x45057e
45056e:	8b 45 f8             	mov    -0x8(%ebp),%eax
450571:	e8 f6 f4 ff ff       	call   0x44fa6c
450576:	c3                   	ret
450577:	e9 d8 34 fb ff       	jmp    0x403a54
45057c:	eb f0                	jmp    0x45056e
45057e:	33 c0                	xor    %eax,%eax
450580:	5a                   	pop    %edx