45a3b2:	74 06                	je     0x45a3ba
45a3b4:	66 81 45 fa 00 80    	addw   $0x8000,-0x6(%ebp)
45a3ba:	8b 45 f4             	mov    -0xc(%ebp),%eax
45a3bd:	8b 40 34             	mov    0x34(%eax),%eax
45a3c0:	89 45 ec             	mov    %eax,-0x14(%ebp)
45a3c3:	8d 55 ec             	lea    -0x14(%ebp),%edx
45a3c6:	a1 ac 5b 47 00       	mov    0x475bac,%eax
45a3cb:	e8 c4 10 fd ff       	call   0x42b494
45a3d0:	33 c0                	xor    %eax,%eax
45a3d2:	55                   	push   %ebp
45a3d3:	68 66 a4 45 00       	push   $0x45a466
45a3d8:	64 ff 30             	push   %fs:(%eax)
45a3db:	64 89 20             	mov    %esp,%fs:(%eax)
45a3de:	c6 45 f3 00          	movb   $0x0,-0xd(%ebp)
45a3e2:	0f b7 55 fa          	movzwl -0x6(%ebp),%edx
45a3e6:	b1 02                	mov    $0x2,%cl
45a3e8:	8b 45 f4             	mov    -0xc(%ebp),%eax
45a3eb:	e8 7c fc ff ff       	call   0x45a06c
45a3f0:	89 45 fc             	mov    %eax,-0x4(%ebp)
45a3f3:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a3f7:	74 49                	je     0x45a442
45a3f9:	8d 55 fc             	lea    -0x4(%ebp),%edx
45a3fc:	a1 ac 5b 47 00       	mov    0x475bac,%eax
45a401:	e8 8e 10 fd ff       	call   0x42b494
45a406:	33 c0                	xor    %eax,%eax
45a408:	55                   	push   %ebp
45a409:	68 3b a4 45 00       	push   $0x45a43b
45a40e:	64 ff 30             	push   %fs:(%eax)
45a411:	64 89 20             	mov    %esp,%fs:(%eax)
45a414:	55                   	push   %ebp
45a415:	8d 45 fc             	lea    -0x4(%ebp),%eax
45a418:	33 d2                	xor    %edx,%edx
45a41a:	e8 f5 fd ff ff       	call   0x45a214
45a41f:	59                   	pop    %ecx
45a420:	88 45 f3             	mov    %al,-0xd(%ebp)
45a423:	33 c0                	xor    %eax,%eax
45a425:	5a                   	pop    %edx
45a426:	59                   	pop    %ecx
45a427:	59                   	pop    %ecx
45a428:	64 89 10             	mov    %edx,%fs:(%eax)
45a42b:	68 42 a4 45 00       	push   $0x45a442
45a430:	a1 ac 5b 47 00       	mov    0x475bac,%eax
45a435:	e8 52 10 fd ff       	call   0x42b48c
45a43a:	c3                   	ret
45a43b:	e9 14 96 fa ff       	jmp    0x403a54
45a440:	eb ee                	jmp    0x45a430
45a442:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
45a446:	74 06                	je     0x45a44e
45a448:	80 7d f3 02          	cmpb   $0x2,-0xd(%ebp)
45a44c:	74 90                	je     0x45a3de
45a44e:	33 c0                	xor    %eax,%eax
45a450:	5a                   	pop    %edx
45a451:	59                   	pop    %ecx
45a452:	59                   	pop    %ecx
45a453:	64 89 10             	mov    %edx,%fs:(%eax)
45a456:	68 6d a4 45 00       	push   $0x45a46d
45a45b:	a1 ac 5b 47 00       	mov    0x475bac,%eax
45a460:	e8 27 10 fd ff       	call   0x42b48c
45a465:	c3                   	ret
45a466:	e9 e9 95 fa ff       	jmp    0x403a54
45a46b:	eb ee                	jmp    0x45a45b
45a46d:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45a471:	75 0a                	jne    0x45a47d
45a473:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
45a477:	74 04                	je     0x45a47d
45a479:	33 c0                	xor    %eax,%eax
45a47b:	eb 02                	jmp    0x45a47f
45a47d:	b0 01                	mov    $0x1,%al
45a47f:	5b                   	pop    %ebx
45a480:	8b e5                	mov    %ebp,%esp
45a482:	5d                   	pop    %ebp
45a483:	c3                   	ret
45a484:	8a 40 41             	mov    0x41(%eax),%al
45a487:	34 01                	xor    $0x1,%al
45a489:	c3                   	ret
45a48a:	8b c0                	mov    %eax,%eax
45a48c:	53                   	push   %ebx
45a48d:	56                   	push   %esi
45a48e:	83 c4 80             	add    $0xffffff80,%esp
45a491:	8b d8                	mov    %eax,%ebx
45a493:	a1 0c 49 47 00       	mov    0x47490c,%eax
45a498:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
45a49c:	0f 84 9c 00 00 00    	je     0x45a53e
45a4a2:	83 7b 38 00          	cmpl   $0x0,0x38(%ebx)
45a4a6:	0f 84 92 00 00 00    	je     0x45a53e
45a4ac:	8b c3                	mov    %ebx,%eax
45a4ae:	8b 10                	mov    (%eax),%edx
45a4b0:	ff 52 34             	call   *0x34(%edx)
45a4b3:	8b f0                	mov    %eax,%esi
45a4b5:	c7 04 24 2c 00 00 00 	movl   $0x2c,(%esp)
45a4bc:	c7 44 24 04 10 00 00 	movl   $0x10,0x4(%esp)
45a4c3:	00
45a4c4:	8d 44 24 30          	lea    0x30(%esp),%eax
45a4c8:	89 44 24 24          	mov    %eax,0x24(%esp)
45a4cc:	c7 44 24 28 50 00 00 	movl   $0x50,0x28(%esp)
45a4d3:	00
45a4d4:	54                   	push   %esp
45a4d5:	6a ff                	push   $0xffffffff
45a4d7:	6a 00                	push   $0x0
45a4d9:	56                   	push   %esi
45a4da:	e8 ed c3 fa ff       	call   0x4068cc
45a4df:	85 c0                	test   %eax,%eax
45a4e1:	74 5b                	je     0x45a53e
45a4e3:	8b c3                	mov    %ebx,%eax
45a4e5:	e8 26 03 00 00       	call   0x45a810
45a4ea:	8b 54 24 08          	mov    0x8(%esp),%edx
45a4ee:	81 e2 00 60 00 00    	and    $0x6000,%edx
45a4f4:	83 fa 01             	cmp    $0x1,%edx
45a4f7:	1b d2                	sbb    %edx,%edx
45a4f9:	42                   	inc    %edx
45a4fa:	3a c2                	cmp    %dl,%al
45a4fc:	74 40                	je     0x45a53e
45a4fe:	8b c3                	mov    %ebx,%eax
45a500:	e8 0b 03 00 00       	call   0x45a810
45a505:	83 e0 7f             	and    $0x7f,%eax
45a508:	c1 e0 0d             	shl    $0xd,%eax
45a50b:	8d 04 40             	lea    (%eax,%eax,2),%eax
45a50e:	8b 54 24 08          	mov    0x8(%esp),%edx
45a512:	81 e2 ff 9f ff ff    	and    $0xffff9fff,%edx
45a518:	0b c2                	or     %edx,%eax
45a51a:	89 44 24 08          	mov    %eax,0x8(%esp)
45a51e:	c7 44 24 04 10 00 00 	movl   $0x10,0x4(%esp)
45a525:	00
45a526:	54                   	push   %esp
45a527:	6a ff                	push   $0xffffffff
45a529:	6a 00                	push   $0x0
45a52b:	56                   	push   %esi
45a52c:	e8 cb c5 fa ff       	call   0x406afc
45a531:	85 c0                	test   %eax,%eax
45a533:	74 09                	je     0x45a53e
45a535:	8b 43 38             	mov    0x38(%ebx),%eax
45a538:	50                   	push   %eax
45a539:	e8 6e c2 fa ff       	call   0x4067ac
45a53e:	81 c4 80 00 00 00    	add    $0x80,%esp
45a544:	5e                   	pop    %esi
45a545:	5b                   	pop    %ebx
45a546:	c3                   	ret
45a547:	90                   	nop
45a548:	55                   	push   %ebp
45a549:	8b ec                	mov    %esp,%ebp
45a54b:	83 c4 f4             	add    $0xfffffff4,%esp
45a54e:	53                   	push   %ebx
45a54f:	56                   	push   %esi
45a550:	89 45 fc             	mov    %eax,-0x4(%ebp)
45a553:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a556:	50                   	push   %eax
45a557:	e8 60 c3 fa ff       	call   0x4068bc
45a55c:	89 45 f4             	mov    %eax,-0xc(%ebp)
45a55f:	8b 45 08             	mov    0x8(%ebp),%eax
45a562:	8d 98 00 fe ff ff    	lea    -0x200(%eax),%ebx
45a568:	8b 45 08             	mov    0x8(%ebp),%eax
45a56b:	83 c0 fb             	add    $0xfffffffb,%eax
45a56e:	89 45 f8             	mov    %eax,-0x8(%ebp)
45a571:	33 f6                	xor    %esi,%esi
45a573:	eb 60                	jmp    0x45a5d5
45a575:	53                   	push   %ebx
45a576:	8b 45 f8             	mov    -0x8(%ebp),%eax
45a579:	2b c3                	sub    %ebx,%eax
45a57b:	50                   	push   %eax
45a57c:	68 00 04 00 00       	push   $0x400
45a581:	8b 45 08             	mov    0x8(%ebp),%eax
45a584:	8b 80 fc fd ff ff    	mov    -0x204(%eax),%eax
45a58a:	8b ce                	mov    %esi,%ecx
45a58c:	8b 55 fc             	mov    -0x4(%ebp),%edx
45a58f:	e8 50 05 00 00       	call   0x45aae4
45a594:	8b c3                	mov    %ebx,%eax
45a596:	e8 9d e3 fa ff       	call   0x408938
45a59b:	8b d8                	mov    %eax,%ebx
45a59d:	68 00 04 00 00       	push   $0x400
45a5a2:	56                   	push   %esi
45a5a3:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a5a6:	50                   	push   %eax
45a5a7:	e8 28 c3 fa ff       	call   0x4068d4
45a5ac:	a8 02                	test   $0x2,%al
45a5ae:	74 07                	je     0x45a5b7
45a5b0:	c6 03 24             	movb   $0x24,(%ebx)
45a5b3:	43                   	inc    %ebx
45a5b4:	c6 03 00             	movb   $0x0,(%ebx)
45a5b7:	a8 40                	test   $0x40,%al
45a5b9:	74 07                	je     0x45a5c2
45a5bb:	c6 03 40             	movb   $0x40,(%ebx)
45a5be:	43                   	inc    %ebx
45a5bf:	c6 03 00             	movb   $0x0,(%ebx)
45a5c2:	a8 01                	test   $0x1,%al
45a5c4:	74 07                	je     0x45a5cd
45a5c6:	c6 03 23             	movb   $0x23,(%ebx)
45a5c9:	43                   	inc    %ebx
45a5ca:	c6 03 00             	movb   $0x0,(%ebx)
45a5cd:	c6 03 3b             	movb   $0x3b,(%ebx)
45a5d0:	43                   	inc    %ebx
45a5d1:	c6 03 00             	movb   $0x0,(%ebx)
45a5d4:	46                   	inc    %esi
45a5d5:	3b 75 f4             	cmp    -0xc(%ebp),%esi
45a5d8:	7d 05                	jge    0x45a5df
45a5da:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
45a5dd:	72 96                	jb     0x45a575
45a5df:	5e                   	pop    %esi
45a5e0:	5b                   	pop    %ebx
45a5e1:	8b e5                	mov    %ebp,%esp
45a5e3:	5d                   	pop    %ebp
45a5e4:	c3                   	ret
45a5e5:	8d 40 00             	lea    0x0(%eax),%eax
45a5e8:	55                   	push   %ebp
45a5e9:	8b ec                	mov    %esp,%ebp
45a5eb:	81 c4 fc fd ff ff    	add    $0xfffffdfc,%esp
45a5f1:	53                   	push   %ebx
45a5f2:	89 85 fc fd ff ff    	mov    %eax,-0x204(%ebp)
45a5f8:	33 db                	xor    %ebx,%ebx
45a5fa:	c6 85 00 fe ff ff 00 	movb   $0x0,-0x200(%ebp)
45a601:	8b 85 fc fd ff ff    	mov    -0x204(%ebp),%eax
45a607:	83 78 38 00          	cmpl   $0x0,0x38(%eax)
45a60b:	74 12                	je     0x45a61f
45a60d:	55                   	push   %ebp
45a60e:	8b 85 fc fd ff ff    	mov    -0x204(%ebp),%eax
45a614:	8b 10                	mov    (%eax),%edx
45a616:	ff 52 34             	call   *0x34(%edx)
45a619:	e8 2a ff ff ff       	call   0x45a548
45a61e:	59                   	pop    %ecx
45a61f:	8b 85 fc fd ff ff    	mov    -0x204(%ebp),%eax
45a625:	83 78 3c 00          	cmpl   $0x0,0x3c(%eax)
45a629:	74 1d                	je     0x45a648
45a62b:	8b 85 fc fd ff ff    	mov    -0x204(%ebp),%eax
45a631:	8b 40 3c             	mov    0x3c(%eax),%eax
45a634:	e8 d7 9e fa ff       	call   0x404510
45a639:	8d 95 00 fe ff ff    	lea    -0x200(%ebp),%edx
45a63f:	e8 b8 e3 fa ff       	call   0x4089fc
45a644:	85 c0                	test   %eax,%eax
45a646:	74 1b                	je     0x45a663
45a648:	b3 01                	mov    $0x1,%bl
45a64a:	8b 85 fc fd ff ff    	mov    -0x204(%ebp),%eax
45a650:	83 c0 3c             	add    $0x3c,%eax
45a653:	8d 95 00 fe ff ff    	lea    -0x200(%ebp),%edx
45a659:	b9 00 02 00 00       	mov    $0x200,%ecx
45a65e:	e8 5d 9c fa ff       	call   0x4042c0
45a663:	8b c3                	mov    %ebx,%eax
45a665:	5b                   	pop    %ebx
45a666:	8b e5                	mov    %ebp,%esp
45a668:	5d                   	pop    %ebp
45a669:	c3                   	ret
45a66a:	8b c0                	mov    %eax,%eax
45a66c:	3a 50 40             	cmp    0x40(%eax),%dl
45a66f:	74 08                	je     0x45a679
45a671:	88 50 40             	mov    %dl,0x40(%eax)
45a674:	e8 43 f9 ff ff       	call   0x459fbc
45a679:	c3                   	ret
45a67a:	8b c0                	mov    %eax,%eax
45a67c:	55                   	push   %ebp
45a67d:	8b ec                	mov    %esp,%ebp
45a67f:	83 c4 f8             	add    $0xfffffff8,%esp
45a682:	89 45 fc             	mov    %eax,-0x4(%ebp)
45a685:	a1 0c 49 47 00       	mov    0x47490c,%eax
45a68a:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
45a68e:	74 63                	je     0x45a6f3
45a690:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a693:	8a 40 30             	mov    0x30(%eax),%al
45a696:	88 45 fb             	mov    %al,-0x5(%ebp)
45a699:	8b 55 fc             	mov    -0x4(%ebp),%edx
45a69c:	8a 52 41             	mov    0x41(%edx),%dl
45a69f:	88 55 fa             	mov    %dl,-0x6(%ebp)
45a6a2:	33 d2                	xor    %edx,%edx
45a6a4:	55                   	push   %ebp
45a6a5:	68 ec a6 45 00       	push   $0x45a6ec
45a6aa:	64 ff 32             	push   %fs:(%edx)
45a6ad:	64 89 22             	mov    %esp,%fs:(%edx)
45a6b0:	84 c0                	test   %al,%al
45a6b2:	75 0c                	jne    0x45a6c0
45a6b4:	b2 01                	mov    $0x1,%dl
45a6b6:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a6b9:	e8 ce 04 00 00       	call   0x45ab8c
45a6be:	eb 0a                	jmp    0x45a6ca
45a6c0:	33 d2                	xor    %edx,%edx
45a6c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a6c5:	e8 c2 04 00 00       	call   0x45ab8c
45a6ca:	33 c0                	xor    %eax,%eax
45a6cc:	5a                   	pop    %edx
45a6cd:	59                   	pop    %ecx
45a6ce:	59                   	pop    %ecx
45a6cf:	64 89 10             	mov    %edx,%fs:(%eax)
45a6d2:	68 f3 a6 45 00       	push   $0x45a6f3
45a6d7:	8a 55 fb             	mov    -0x5(%ebp),%dl
45a6da:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a6dd:	e8 aa 04 00 00       	call   0x45ab8c
45a6e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
45a6e5:	8a 55 fa             	mov    -0x6(%ebp),%dl
45a6e8:	88 50 41             	mov    %dl,0x41(%eax)
45a6eb:	c3                   	ret
45a6ec:	e9 63 93 fa ff       	jmp    0x403a54
45a6f1:	eb e4                	jmp    0x45a6d7
45a6f3:	59                   	pop    %ecx
45a6f4:	59                   	pop    %ecx
45a6f5:	5d                   	pop    %ebp
45a6f6:	c3                   	ret
45a6f7:	90                   	nop
45a6f8:	53                   	push   %ebx
45a6f9:	56                   	push   %esi
45a6fa:	8b f2                	mov    %edx,%esi
45a6fc:	8b d8                	mov    %eax,%ebx
45a6fe:	89 73 38             	mov    %esi,0x38(%ebx)
45a701:	8b c3                	mov    %ebx,%eax
45a703:	e8 e0 fe ff ff       	call   0x45a5e8
45a708:	a1 0c 49 47 00       	mov    0x47490c,%eax
45a70d:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
45a711:	74 1a                	je     0x45a72d
45a713:	85 f6                	test   %esi,%esi
45a715:	74 16                	je     0x45a72d
45a717:	80 7b 41 00          	cmpb   $0x0,0x41(%ebx)
45a71b:	74 09                	je     0x45a726
45a71d:	8b c3                	mov    %ebx,%eax
45a71f:	e8 8c 04 00 00       	call   0x45abb0
45a724:	eb 07                	jmp    0x45a72d
45a726:	8b c3                	mov    %ebx,%eax
45a728:	e8 4f ff ff ff       	call   0x45a67c
45a72d:	5e                   	pop    %esi
45a72e:	5b                   	pop    %ebx
45a72f:	c3                   	ret
45a730:	53                   	push   %ebx
45a731:	66 83 78 52 00       	cmpw   $0x0,0x52(%eax)
45a736:	74 0d                	je     0x45a745
45a738:	51                   	push   %ecx
45a739:	8b d8                	mov    %eax,%ebx
45a73b:	8b ca                	mov    %edx,%ecx
45a73d:	8b d0                	mov    %eax,%edx
45a73f:	8b 43 54             	mov    0x54(%ebx),%eax
45a742:	ff 53 50             	call   *0x50(%ebx)
45a745:	5b                   	pop    %ebx
45a746:	c3                   	ret
45a747:	90                   	nop
45a748:	53                   	push   %ebx
45a749:	8b d8                	mov    %eax,%ebx
45a74b:	8b c3                	mov    %ebx,%eax
45a74d:	e8 66 67 fc ff       	call   0x420eb8
45a752:	33 c9                	xor    %ecx,%ecx
45a754:	33 d2                	xor    %edx,%edx
45a756:	8b c3                	mov    %ebx,%eax
45a758:	8b 18                	mov    (%eax),%ebx
45a75a:	ff 53 30             	call   *0x30(%ebx)
45a75d:	5b                   	pop    %ebx
45a75e:	c3                   	ret
45a75f:	90                   	nop
45a760:	55                   	push   %ebp
45a761:	8b ec                	mov    %esp,%ebp
45a763:	53                   	push   %ebx
45a764:	56                   	push   %esi
45a765:	8b f1                	mov    %ecx,%esi
45a767:	8b d8                	mov    %eax,%ebx
45a769:	66 a1 94 a7 45 00    	mov    0x45a794,%ax
45a76f:	66 23 43 1c          	and    0x1c(%ebx),%ax
45a773:	66 8b 15 98 a7 45 00 	mov    0x45a798,%dx
45a77a:	66 3b d0             	cmp    %ax,%dx
45a77d:	75 0c                	jne    0x45a78b