44827b:	56                   	push   %esi
44827c:	8b d8                	mov    %eax,%ebx
44827e:	33 c0                	xor    %eax,%eax
448280:	89 45 f8             	mov    %eax,-0x8(%ebp)
448283:	8b 43 1c             	mov    0x1c(%ebx),%eax
448286:	89 45 f4             	mov    %eax,-0xc(%ebp)
448289:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44828c:	8b 45 f4             	mov    -0xc(%ebp),%eax
44828f:	8b 40 14             	mov    0x14(%eax),%eax
448292:	66 be b9 ff          	mov    $0xffb9,%si
448296:	e8 a9 b1 fb ff       	call   0x403444
44829b:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44829f:	0f 95 45 ff          	setne  -0x1(%ebp)
4482a3:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
4482a7:	74 43                	je     0x4482ec
4482a9:	8b 45 f4             	mov    -0xc(%ebp),%eax
4482ac:	89 58 38             	mov    %ebx,0x38(%eax)
4482af:	33 c0                	xor    %eax,%eax
4482b1:	55                   	push   %ebp
4482b2:	68 e5 82 44 00       	push   $0x4482e5
4482b7:	64 ff 30             	push   %fs:(%eax)
4482ba:	64 89 20             	mov    %esp,%fs:(%eax)
4482bd:	6a 00                	push   $0x0
4482bf:	8b 45 f4             	mov    -0xc(%ebp),%eax
4482c2:	8b 50 14             	mov    0x14(%eax),%edx
4482c5:	33 c9                	xor    %ecx,%ecx
4482c7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4482ca:	e8 39 83 ff ff       	call   0x440608
4482cf:	33 c0                	xor    %eax,%eax
4482d1:	5a                   	pop    %edx
4482d2:	59                   	pop    %ecx
4482d3:	59                   	pop    %ecx
4482d4:	64 89 10             	mov    %edx,%fs:(%eax)
4482d7:	68 ec 82 44 00       	push   $0x4482ec
4482dc:	8b 45 f4             	mov    -0xc(%ebp),%eax
4482df:	33 d2                	xor    %edx,%edx
4482e1:	89 50 38             	mov    %edx,0x38(%eax)
4482e4:	c3                   	ret
4482e5:	e9 b2 b6 fb ff       	jmp    0x40399c
4482ea:	eb f0                	jmp    0x4482dc
4482ec:	8a 45 ff             	mov    -0x1(%ebp),%al
4482ef:	5e                   	pop    %esi
4482f0:	5b                   	pop    %ebx
4482f1:	8b e5                	mov    %ebp,%esp
4482f3:	5d                   	pop    %ebp
4482f4:	c3                   	ret
4482f5:	8d 40 00             	lea    0x0(%eax),%eax
4482f8:	55                   	push   %ebp
4482f9:	8b ec                	mov    %esp,%ebp
4482fb:	53                   	push   %ebx
4482fc:	56                   	push   %esi
4482fd:	33 db                	xor    %ebx,%ebx
4482ff:	8b 45 08             	mov    0x8(%ebp),%eax
448302:	8b 40 fc             	mov    -0x4(%eax),%eax
448305:	8b 70 14             	mov    0x14(%eax),%esi
448308:	85 f6                	test   %esi,%esi
44830a:	74 16                	je     0x448322
44830c:	8b c6                	mov    %esi,%eax
44830e:	e8 65 02 00 00       	call   0x448578
448313:	85 c0                	test   %eax,%eax
448315:	74 04                	je     0x44831b
448317:	b3 01                	mov    $0x1,%bl
448319:	eb 07                	jmp    0x448322
44831b:	8b 76 14             	mov    0x14(%esi),%esi
44831e:	85 f6                	test   %esi,%esi
448320:	75 ea                	jne    0x44830c
448322:	8b c3                	mov    %ebx,%eax
448324:	5e                   	pop    %esi
448325:	5b                   	pop    %ebx
448326:	5d                   	pop    %ebp
448327:	c3                   	ret
448328:	55                   	push   %ebp
448329:	8b ec                	mov    %esp,%ebp
44832b:	83 c4 ec             	add    $0xffffffec,%esp
44832e:	53                   	push   %ebx
44832f:	56                   	push   %esi
448330:	57                   	push   %edi
448331:	89 45 fc             	mov    %eax,-0x4(%ebp)
448334:	8b 45 fc             	mov    -0x4(%ebp),%eax
448337:	8b 40 04             	mov    0x4(%eax),%eax
44833a:	85 c0                	test   %eax,%eax
44833c:	0f 84 55 01 00 00    	je     0x448497
448342:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
448346:	0f 84 4b 01 00 00    	je     0x448497
44834c:	8b 55 fc             	mov    -0x4(%ebp),%edx
44834f:	8b 52 1c             	mov    0x1c(%edx),%edx
448352:	83 7a 6c 00          	cmpl   $0x0,0x6c(%edx)
448356:	0f 85 3b 01 00 00    	jne    0x448497
44835c:	8b 55 fc             	mov    -0x4(%ebp),%edx
44835f:	8b 52 14             	mov    0x14(%edx),%edx
448362:	8a 52 10             	mov    0x10(%edx),%dl
448365:	88 90 9c 00 00 00    	mov    %dl,0x9c(%eax)
44836b:	ba 02 00 00 00       	mov    $0x2,%edx
448370:	8b 45 fc             	mov    -0x4(%ebp),%eax
448373:	e8 60 fd ff ff       	call   0x4480d8
448378:	8b d8                	mov    %eax,%ebx
44837a:	ba 01 00 00 00       	mov    $0x1,%edx
44837f:	8b 45 fc             	mov    -0x4(%ebp),%eax
448382:	e8 51 fd ff ff       	call   0x4480d8
448387:	8b f0                	mov    %eax,%esi
448389:	55                   	push   %ebp
44838a:	e8 69 ff ff ff       	call   0x4482f8
44838f:	59                   	pop    %ecx
448390:	84 c0                	test   %al,%al
448392:	74 20                	je     0x4483b4
448394:	8b 45 fc             	mov    -0x4(%ebp),%eax
448397:	8b 40 14             	mov    0x14(%eax),%eax
44839a:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
44839e:	75 0b                	jne    0x4483ab
4483a0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483a3:	8b 40 1c             	mov    0x1c(%eax),%eax
4483a6:	2b 58 0c             	sub    0xc(%eax),%ebx
4483a9:	eb 09                	jmp    0x4483b4
4483ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483ae:	8b 40 1c             	mov    0x1c(%eax),%eax
4483b1:	2b 70 0c             	sub    0xc(%eax),%esi
4483b4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483b7:	e8 bc 01 00 00       	call   0x448578
4483bc:	85 c0                	test   %eax,%eax
4483be:	75 6e                	jne    0x44842e
4483c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483c3:	8b 40 14             	mov    0x14(%eax),%eax
4483c6:	8b 55 fc             	mov    -0x4(%ebp),%edx
4483c9:	8b 52 1c             	mov    0x1c(%edx),%edx
4483cc:	3b 42 64             	cmp    0x64(%edx),%eax
4483cf:	74 2a                	je     0x4483fb
4483d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483d4:	8b 40 14             	mov    0x14(%eax),%eax
4483d7:	8a 40 10             	mov    0x10(%eax),%al
4483da:	8b 55 fc             	mov    -0x4(%ebp),%edx
4483dd:	8b 52 1c             	mov    0x1c(%edx),%edx
4483e0:	8b 52 64             	mov    0x64(%edx),%edx
4483e3:	3a 42 10             	cmp    0x10(%edx),%al
4483e6:	75 13                	jne    0x4483fb
4483e8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483eb:	e8 b0 00 00 00       	call   0x4484a0
4483f0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4483f3:	8b 52 1c             	mov    0x1c(%edx),%edx
4483f6:	3b 42 68             	cmp    0x68(%edx),%eax
4483f9:	7c 33                	jl     0x44842e
4483fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4483fe:	8b 40 14             	mov    0x14(%eax),%eax
448401:	8a 40 10             	mov    0x10(%eax),%al
448404:	8b 55 fc             	mov    -0x4(%ebp),%edx
448407:	8b 52 1c             	mov    0x1c(%edx),%edx
44840a:	8b 52 64             	mov    0x64(%edx),%edx
44840d:	3a 42 10             	cmp    0x10(%edx),%al
448410:	74 3c                	je     0x44844e
448412:	8b 45 fc             	mov    -0x4(%ebp),%eax
448415:	e8 86 00 00 00       	call   0x4484a0
44841a:	8b f8                	mov    %eax,%edi
44841c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44841f:	8b 40 1c             	mov    0x1c(%eax),%eax
448422:	8b 40 64             	mov    0x64(%eax),%eax
448425:	e8 76 00 00 00       	call   0x4484a0
44842a:	3b f8                	cmp    %eax,%edi
44842c:	7d 20                	jge    0x44844e
44842e:	8b 45 fc             	mov    -0x4(%ebp),%eax
448431:	8b 40 14             	mov    0x14(%eax),%eax
448434:	80 78 10 01          	cmpb   $0x1,0x10(%eax)
448438:	75 0b                	jne    0x448445
44843a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44843d:	8b 40 1c             	mov    0x1c(%eax),%eax
448440:	2b 70 0c             	sub    0xc(%eax),%esi
448443:	eb 09                	jmp    0x44844e
448445:	8b 45 fc             	mov    -0x4(%ebp),%eax
448448:	8b 40 1c             	mov    0x1c(%eax),%eax
44844b:	2b 58 0c             	sub    0xc(%eax),%ebx
44844e:	56                   	push   %esi
44844f:	8d 45 ec             	lea    -0x14(%ebp),%eax
448452:	50                   	push   %eax
448453:	ba 01 00 00 00       	mov    $0x1,%edx
448458:	8b 45 fc             	mov    -0x4(%ebp),%eax
44845b:	e8 0c fc ff ff       	call   0x44806c
448460:	50                   	push   %eax
448461:	ba 02 00 00 00       	mov    $0x2,%edx
448466:	8b 45 fc             	mov    -0x4(%ebp),%eax
448469:	e8 fe fb ff ff       	call   0x44806c
44846e:	8b cb                	mov    %ebx,%ecx
448470:	5a                   	pop    %edx
448471:	e8 fa a4 fc ff       	call   0x412970
448476:	8d 4d ec             	lea    -0x14(%ebp),%ecx
448479:	8b 45 fc             	mov    -0x4(%ebp),%eax
44847c:	8b 50 04             	mov    0x4(%eax),%edx
44847f:	8b 45 fc             	mov    -0x4(%ebp),%eax
448482:	8b 40 1c             	mov    0x1c(%eax),%eax
448485:	8b 18                	mov    (%eax),%ebx
448487:	ff 13                	call   *(%ebx)
448489:	8d 55 ec             	lea    -0x14(%ebp),%edx
44848c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44848f:	8b 40 04             	mov    0x4(%eax),%eax
448492:	e8 31 6e ff ff       	call   0x43f2c8
448497:	5f                   	pop    %edi
448498:	5e                   	pop    %esi
448499:	5b                   	pop    %ebx
44849a:	8b e5                	mov    %ebp,%esp
44849c:	5d                   	pop    %ebp
44849d:	c3                   	ret
44849e:	8b c0                	mov    %eax,%eax
4484a0:	53                   	push   %ebx
4484a1:	8b d8                	mov    %eax,%ebx
4484a3:	8b c3                	mov    %ebx,%eax
4484a5:	e8 fe fa ff ff       	call   0x447fa8
4484aa:	84 c0                	test   %al,%al
4484ac:	75 14                	jne    0x4484c2
4484ae:	8b c3                	mov    %ebx,%eax
4484b0:	e8 7b fa ff ff       	call   0x447f30
4484b5:	84 c0                	test   %al,%al
4484b7:	74 09                	je     0x4484c2
4484b9:	8b c3                	mov    %ebx,%eax
4484bb:	e8 1c fb ff ff       	call   0x447fdc
4484c0:	5b                   	pop    %ebx
4484c1:	c3                   	ret
4484c2:	8b 43 20             	mov    0x20(%ebx),%eax
4484c5:	5b                   	pop    %ebx
4484c6:	c3                   	ret
4484c7:	90                   	nop
4484c8:	89 50 20             	mov    %edx,0x20(%eax)
4484cb:	c3                   	ret
4484cc:	8b 40 08             	mov    0x8(%eax),%eax
4484cf:	eb 02                	jmp    0x4484d3
4484d1:	8b c2                	mov    %edx,%eax
4484d3:	8b 50 0c             	mov    0xc(%eax),%edx
4484d6:	85 d2                	test   %edx,%edx
4484d8:	75 f7                	jne    0x4484d1
4484da:	c3                   	ret
4484db:	90                   	nop
4484dc:	53                   	push   %ebx
4484dd:	56                   	push   %esi
4484de:	8b f2                	mov    %edx,%esi
4484e0:	8b d8                	mov    %eax,%ebx
4484e2:	8b d6                	mov    %esi,%edx
4484e4:	8b c3                	mov    %ebx,%eax
4484e6:	e8 dd ff ff ff       	call   0x4484c8
4484eb:	8b 5b 08             	mov    0x8(%ebx),%ebx
4484ee:	85 db                	test   %ebx,%ebx
4484f0:	74 20                	je     0x448512
4484f2:	8b c3                	mov    %ebx,%eax
4484f4:	e8 7f fa ff ff       	call   0x447f78
4484f9:	85 c0                	test   %eax,%eax
4484fb:	7e 0e                	jle    0x44850b
4484fd:	8b c3                	mov    %ebx,%eax
4484ff:	e8 c8 ff ff ff       	call   0x4484cc
448504:	8b d6                	mov    %esi,%edx
448506:	e8 d1 ff ff ff       	call   0x4484dc
44850b:	8b 5b 0c             	mov    0xc(%ebx),%ebx
44850e:	85 db                	test   %ebx,%ebx
448510:	75 e0                	jne    0x4484f2
448512:	5e                   	pop    %esi
448513:	5b                   	pop    %ebx
448514:	c3                   	ret
448515:	8d 40 00             	lea    0x0(%eax),%eax
448518:	53                   	push   %ebx
448519:	56                   	push   %esi
44851a:	57                   	push   %edi
44851b:	8b f0                	mov    %eax,%esi
44851d:	8b 5e 08             	mov    0x8(%esi),%ebx
448520:	85 db                	test   %ebx,%ebx
448522:	74 4d                	je     0x448571
448524:	8b c3                	mov    %ebx,%eax
448526:	e8 75 ff ff ff       	call   0x4484a0
44852b:	8b f8                	mov    %eax,%edi
44852d:	8b c3                	mov    %ebx,%eax
44852f:	e8 a8 fa ff ff       	call   0x447fdc
448534:	3b f8                	cmp    %eax,%edi
448536:	7c 14                	jl     0x44854c
448538:	8b c3                	mov    %ebx,%eax
44853a:	e8 61 ff ff ff       	call   0x4484a0
44853f:	8b f8                	mov    %eax,%edi
448541:	8b c6                	mov    %esi,%eax
448543:	e8 dc fa ff ff       	call   0x448024
448548:	3b f8                	cmp    %eax,%edi
44854a:	7e 17                	jle    0x448563
44854c:	8b c6                	mov    %esi,%eax
44854e:	e8 35 fc ff ff       	call   0x448188
448553:	8b 46 1c             	mov    0x1c(%esi),%eax
448556:	50                   	push   %eax
448557:	68 28 a0 44 00       	push   $0x44a028
44855c:	8b d6                	mov    %esi,%edx
44855e:	e8 f1 02 00 00       	call   0x448854
448563:	8b c3                	mov    %ebx,%eax
448565:	e8 ae ff ff ff       	call   0x448518
44856a:	8b 5b 0c             	mov    0xc(%ebx),%ebx
44856d:	85 db                	test   %ebx,%ebx
44856f:	75 b3                	jne    0x448524
448571:	5f                   	pop    %edi
448572:	5e                   	pop    %esi
448573:	5b                   	pop    %ebx
448574:	c3                   	ret
448575:	8d 40 00             	lea    0x0(%eax),%eax
448578:	8b 40 0c             	mov    0xc(%eax),%eax
44857b:	e8 94 f9 ff ff       	call   0x447f14
448580:	c3                   	ret
448581:	8d 40 00             	lea    0x0(%eax),%eax
448584:	53                   	push   %ebx
448585:	8b 58 18             	mov    0x18(%eax),%ebx
448588:	eb 03                	jmp    0x44858d
44858a:	8b 5b 18             	mov    0x18(%ebx),%ebx
44858d:	85 db                	test   %ebx,%ebx
44858f:	74 0b                	je     0x44859c
448591:	8b c3                	mov    %ebx,%eax
448593:	e8 10 fa ff ff       	call   0x447fa8
448598:	84 c0                	test   %al,%al
44859a:	74 ee                	je     0x44858a
44859c:	8b c3                	mov    %ebx,%eax
44859e:	5b                   	pop    %ebx
44859f:	c3                   	ret
4485a0:	8b 40 08             	mov    0x8(%eax),%eax
4485a3:	e8 6c f9 ff ff       	call   0x447f14
4485a8:	c3                   	ret
4485a9:	8d 40 00             	lea    0x0(%eax),%eax
4485ac:	55                   	push   %ebp
4485ad:	8b ec                	mov    %esp,%ebp
4485af:	83 c4 f4             	add    $0xfffffff4,%esp
4485b2:	53                   	push   %ebx
4485b3:	56                   	push   %esi
4485b4:	57                   	push   %edi
4485b5:	84 d2                	test   %dl,%dl
4485b7:	74 08                	je     0x4485c1
4485b9:	83 c4 f0             	add    $0xfffffff0,%esp
4485bc:	e8 ab af fb ff       	call   0x40356c
4485c1:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4485c4:	88 55 fb             	mov    %dl,-0x5(%ebp)
4485c7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4485ca:	33 d2                	xor    %edx,%edx
4485cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4485cf:	e8 44 ac fb ff       	call   0x403218
4485d4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4485d7:	c7 40 0c 04 00 00 00 	movl   $0x4,0xc(%eax)
4485de:	8b 45 fc             	mov    -0x4(%ebp),%eax
4485e1:	8b 55 f4             	mov    -0xc(%ebp),%edx
4485e4:	89 50 14             	mov    %edx,0x14(%eax)
4485e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4485ea:	c7 40 70 00 00 04 00 	movl   $0x40000,0x70(%eax)
4485f1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4485f4:	c7 40 18 0c 00 00 00 	movl   $0xc,0x18(%eax)
4485fb:	8b 45 f4             	mov    -0xc(%ebp),%eax
4485fe:	8a 40 5b             	mov    0x5b(%eax),%al
448601:	3c 01                	cmp    $0x1,%al
448603:	74 04                	je     0x448609
448605:	3c 02                	cmp    $0x2,%al
448607:	75 04                	jne    0x44860d
448609:	33 c0                	xor    %eax,%eax
44860b:	eb 02                	jmp    0x44860f
44860d:	b0 01                	mov    $0x1,%al
44860f:	8b 55 fc             	mov    -0x4(%ebp),%edx
448612:	88 42 1c             	mov    %al,0x1c(%edx)
448615:	8b 4d fc             	mov    -0x4(%ebp),%ecx
448618:	b2 01                	mov    $0x1,%dl
44861a:	a1 54 c1 43 00       	mov    0x43c154,%eax