45d30a:	8d 55 a0             	lea    -0x60(%ebp),%edx
45d30d:	8b 09                	mov    (%ecx),%ecx
45d30f:	e8 12 96 fa ff       	call   0x406926
45d314:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45d317:	6a 7f                	push   $0x7f
45d319:	5a                   	pop    %edx
45d31a:	84 c0                	test   %al,%al
45d31c:	74 10                	je     0x45d32e
45d31e:	c6 05 fc 20 4c 00 01 	movb   $0x1,0x4c20fc
45d325:	eb 07                	jmp    0x45d32e
45d327:	49                   	dec    %ecx
45d328:	eb 01                	jmp    0x45d32b
45d32a:	41                   	inc    %ecx
45d32b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45d32e:	43                   	inc    %ebx
45d32f:	3b 5f 08             	cmp    0x8(%edi),%ebx
45d332:	72 99                	jb     0x45d2cd
45d334:	8b 5d c0             	mov    -0x40(%ebp),%ebx
45d337:	6a ff                	push   $0xffffffff
45d339:	8d 45 cc             	lea    -0x34(%ebp),%eax
45d33c:	50                   	push   %eax
45d33d:	56                   	push   %esi
45d33e:	57                   	push   %edi
45d33f:	8b cb                	mov    %ebx,%ecx
45d341:	e8 ea 2a fb ff       	call   0x40fe30
45d346:	85 c0                	test   %eax,%eax
45d348:	0f 88 bc 00 00 00    	js     0x45d40a
45d34e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45d351:	8d 45 cc             	lea    -0x34(%ebp),%eax
45d354:	50                   	push   %eax
45d355:	c6 05 fc 20 4c 00 00 	movb   $0x0,0x4c20fc
45d35c:	e8 4d 09 fb ff       	call   0x40dcae
45d361:	8b 16                	mov    (%esi),%edx
45d363:	8b 4f 04             	mov    0x4(%edi),%ecx
45d366:	8b 04 91             	mov    (%ecx,%edx,4),%eax
45d369:	0f b7 40 08          	movzwl 0x8(%eax),%eax
45d36d:	66 3b 45 b8          	cmp    -0x48(%ebp),%ax
45d371:	74 33                	je     0x45d3a6
45d373:	66 3b 45 c8          	cmp    -0x38(%ebp),%ax
45d377:	75 7e                	jne    0x45d3f7
45d379:	8d 42 01             	lea    0x1(%edx),%eax
45d37c:	89 06                	mov    %eax,(%esi)
45d37e:	8b 04 81             	mov    (%ecx,%eax,4),%eax
45d381:	6a 33                	push   $0x33
45d383:	5a                   	pop    %edx
45d384:	66 39 50 08          	cmp    %dx,0x8(%eax)
45d388:	0f 84 df fb ff ff    	je     0x45cf6d
45d38e:	6a 7f                	push   $0x7f
45d390:	5a                   	pop    %edx
45d391:	8b 0e                	mov    (%esi),%ecx
45d393:	8b 47 04             	mov    0x4(%edi),%eax
45d396:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d399:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d39d:	50                   	push   %eax
45d39e:	52                   	push   %edx
45d39f:	8b cb                	mov    %ebx,%ecx
45d3a1:	e8 b6 f8 fe ff       	call   0x44cc5c
45d3a6:	8d 4d a0             	lea    -0x60(%ebp),%ecx
45d3a9:	e8 89 f7 fa ff       	call   0x40cb37
45d3ae:	8d 4d cc             	lea    -0x34(%ebp),%ecx
45d3b1:	e8 6a 58 fb ff       	call   0x412c20
45d3b6:	5f                   	pop    %edi
45d3b7:	5e                   	pop    %esi
45d3b8:	5b                   	pop    %ebx
45d3b9:	c9                   	leave
45d3ba:	c2 0c 00             	ret    $0xc
45d3bd:	ff 75 f4             	push   -0xc(%ebp)
45d3c0:	6a 7d                	push   $0x7d
45d3c2:	eb db                	jmp    0x45d39f
45d3c4:	ff 75 f4             	push   -0xc(%ebp)
45d3c7:	68 82 00 00 00       	push   $0x82
45d3cc:	eb d1                	jmp    0x45d39f
45d3ce:	ff 75 f4             	push   -0xc(%ebp)
45d3d1:	6a 7e                	push   $0x7e
45d3d3:	eb ca                	jmp    0x45d39f
45d3d5:	ff 75 f4             	push   -0xc(%ebp)
45d3d8:	6a 7b                	push   $0x7b
45d3da:	eb c3                	jmp    0x45d39f
45d3dc:	ff 75 ec             	push   -0x14(%ebp)
45d3df:	eb df                	jmp    0x45d3c0
45d3e1:	ff 75 ec             	push   -0x14(%ebp)
45d3e4:	eb e1                	jmp    0x45d3c7
45d3e6:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45d3e9:	8b 01                	mov    (%ecx),%eax
45d3eb:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d3ef:	50                   	push   %eax
45d3f0:	68 b1 00 00 00       	push   $0xb1
45d3f5:	eb a8                	jmp    0x45d39f
45d3f7:	8b 47 04             	mov    0x4(%edi),%eax
45d3fa:	8b ca                	mov    %edx,%ecx
45d3fc:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d3ff:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d403:	50                   	push   %eax
45d404:	6a 7f                	push   $0x7f
45d406:	58                   	pop    %eax
45d407:	50                   	push   %eax
45d408:	eb 95                	jmp    0x45d39f
45d40a:	ff 75 ec             	push   -0x14(%ebp)
45d40d:	6a 6e                	push   $0x6e
45d40f:	eb 8e                	jmp    0x45d39f
45d411:	ff 75 ec             	push   -0x14(%ebp)
45d414:	eb bb                	jmp    0x45d3d1
45d416:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d41a:	50                   	push   %eax
45d41b:	68 80 00 00 00       	push   $0x80
45d420:	e9 7a ff ff ff       	jmp    0x45d39f
45d425:	f7 45 e4 00 01 00 00 	testl  $0x100,-0x1c(%ebp)
45d42c:	8b 0e                	mov    (%esi),%ecx
45d42e:	8b 47 04             	mov    0x4(%edi),%eax
45d431:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d434:	8b cb                	mov    %ebx,%ecx
45d436:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d43a:	50                   	push   %eax
45d43b:	74 0a                	je     0x45d447
45d43d:	68 ae 00 00 00       	push   $0xae
45d442:	e9 5a ff ff ff       	jmp    0x45d3a1
45d447:	68 a4 00 00 00       	push   $0xa4
45d44c:	e9 50 ff ff ff       	jmp    0x45d3a1
45d451:	55                   	push   %ebp
45d452:	8b ec                	mov    %esp,%ebp
45d454:	8b 45 08             	mov    0x8(%ebp),%eax
45d457:	83 ec 38             	sub    $0x38,%esp
45d45a:	8b 40 04             	mov    0x4(%eax),%eax
45d45d:	53                   	push   %ebx
45d45e:	56                   	push   %esi
45d45f:	57                   	push   %edi
45d460:	8b 7d 0c             	mov    0xc(%ebp),%edi
45d463:	8b d9                	mov    %ecx,%ebx
45d465:	ff 07                	incl   (%edi)
45d467:	8b 17                	mov    (%edi),%edx
45d469:	8b 04 90             	mov    (%eax,%edx,4),%eax
45d46c:	66 83 78 08 7f       	cmpw   $0x7f,0x8(%eax)
45d471:	74 11                	je     0x45d484
45d473:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d477:	50                   	push   %eax
45d478:	6a 72                	push   $0x72
45d47a:	e8 dd f7 fe ff       	call   0x44cc5c
45d47f:	e9 c7 00 00 00       	jmp    0x45d54b
45d484:	8d b3 60 01 00 00    	lea    0x160(%ebx),%esi
45d48a:	33 c0                	xor    %eax,%eax
45d48c:	39 06                	cmp    %eax,(%esi)
45d48e:	74 54                	je     0x45d4e4
45d490:	8b ce                	mov    %esi,%ecx
45d492:	e8 ad 82 fa ff       	call   0x405744
45d497:	50                   	push   %eax
45d498:	8d 4d cc             	lea    -0x34(%ebp),%ecx
45d49b:	e8 23 8a fa ff       	call   0x405ec3
45d4a0:	83 7d cc 04          	cmpl   $0x4,-0x34(%ebp)
45d4a4:	74 28                	je     0x45d4ce
45d4a6:	83 7d cc 05          	cmpl   $0x5,-0x34(%ebp)
45d4aa:	74 22                	je     0x45d4ce
45d4ac:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45d4af:	8b 4d 10             	mov    0x10(%ebp),%ecx
45d4b2:	40                   	inc    %eax
45d4b3:	89 01                	mov    %eax,(%ecx)
45d4b5:	8b ce                	mov    %esi,%ecx
45d4b7:	e8 66 09 fb ff       	call   0x40de22
45d4bc:	8d 4d ec             	lea    -0x14(%ebp),%ecx
45d4bf:	e8 5c 57 fb ff       	call   0x412c20
45d4c4:	8d 4d dc             	lea    -0x24(%ebp),%ecx
45d4c7:	e8 54 57 fb ff       	call   0x412c20
45d4cc:	eb bc                	jmp    0x45d48a
45d4ce:	8d 4d ec             	lea    -0x14(%ebp),%ecx
45d4d1:	e8 4a 57 fb ff       	call   0x412c20
45d4d6:	8d 4d dc             	lea    -0x24(%ebp),%ecx
45d4d9:	e8 42 57 fb ff       	call   0x412c20
45d4de:	33 c0                	xor    %eax,%eax
45d4e0:	39 06                	cmp    %eax,(%esi)
45d4e2:	75 1c                	jne    0x45d500
45d4e4:	8b 45 08             	mov    0x8(%ebp),%eax
45d4e7:	8b 0f                	mov    (%edi),%ecx
45d4e9:	8b 40 04             	mov    0x4(%eax),%eax
45d4ec:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d4ef:	8b cb                	mov    %ebx,%ecx
45d4f1:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45d4f5:	50                   	push   %eax
45d4f6:	68 b5 00 00 00       	push   $0xb5
45d4fb:	e9 7a ff ff ff       	jmp    0x45d47a
45d500:	8b 55 10             	mov    0x10(%ebp),%edx
45d503:	8b c8                	mov    %eax,%ecx
45d505:	33 ff                	xor    %edi,%edi
45d507:	8b 02                	mov    (%edx),%eax
45d509:	50                   	push   %eax
45d50a:	8d 70 01             	lea    0x1(%eax),%esi
45d50d:	89 32                	mov    %esi,(%edx)
45d50f:	e8 34 89 fa ff       	call   0x405e48
45d514:	85 c0                	test   %eax,%eax
45d516:	74 33                	je     0x45d54b
45d518:	8b 40 04             	mov    0x4(%eax),%eax
45d51b:	8b 00                	mov    (%eax),%eax
45d51d:	66 39 78 08          	cmp    %di,0x8(%eax)
45d521:	75 e4                	jne    0x45d507
45d523:	8b 00                	mov    (%eax),%eax
45d525:	83 e8 14             	sub    $0x14,%eax
45d528:	74 19                	je     0x45d543
45d52a:	48                   	dec    %eax
45d52b:	74 10                	je     0x45d53d
45d52d:	48                   	dec    %eax
45d52e:	74 06                	je     0x45d536
45d530:	48                   	dec    %eax
45d531:	74 10                	je     0x45d543
45d533:	48                   	dec    %eax
45d534:	75 d1                	jne    0x45d507
45d536:	85 c9                	test   %ecx,%ecx
45d538:	74 0c                	je     0x45d546
45d53a:	49                   	dec    %ecx
45d53b:	eb ca                	jmp    0x45d507
45d53d:	85 c9                	test   %ecx,%ecx
45d53f:	75 c6                	jne    0x45d507
45d541:	eb 08                	jmp    0x45d54b
45d543:	41                   	inc    %ecx
45d544:	eb c1                	jmp    0x45d507
45d546:	8d 46 ff             	lea    -0x1(%esi),%eax
45d549:	89 02                	mov    %eax,(%edx)
45d54b:	5f                   	pop    %edi
45d54c:	5e                   	pop    %esi
45d54d:	5b                   	pop    %ebx
45d54e:	c9                   	leave
45d54f:	c2 0c 00             	ret    $0xc
45d552:	55                   	push   %ebp
45d553:	8b ec                	mov    %esp,%ebp
45d555:	83 ec 40             	sub    $0x40,%esp
45d558:	53                   	push   %ebx
45d559:	56                   	push   %esi
45d55a:	33 db                	xor    %ebx,%ebx
45d55c:	33 f6                	xor    %esi,%esi
45d55e:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45d561:	46                   	inc    %esi
45d562:	57                   	push   %edi
45d563:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45d566:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
45d569:	89 5d dc             	mov    %ebx,-0x24(%ebp)
45d56c:	89 75 e0             	mov    %esi,-0x20(%ebp)
45d56f:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
45d572:	89 5d ec             	mov    %ebx,-0x14(%ebp)
45d575:	89 75 f0             	mov    %esi,-0x10(%ebp)
45d578:	e8 a3 56 fb ff       	call   0x412c20
45d57d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45d580:	89 75 e0             	mov    %esi,-0x20(%ebp)
45d583:	89 75 d4             	mov    %esi,-0x2c(%ebp)
45d586:	e8 95 56 fb ff       	call   0x412c20
45d58b:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45d58e:	89 75 f0             	mov    %esi,-0x10(%ebp)
45d591:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
45d594:	c7 45 f8 0b 00 00 00 	movl   $0xb,-0x8(%ebp)
45d59b:	e8 57 02 fb ff       	call   0x40d7f7
45d5a0:	8b 7d 0c             	mov    0xc(%ebp),%edi
45d5a3:	8b 5d 08             	mov    0x8(%ebp),%ebx
45d5a6:	ff 07                	incl   (%edi)
45d5a8:	8b 0f                	mov    (%edi),%ecx
45d5aa:	8b 53 04             	mov    0x4(%ebx),%edx
45d5ad:	33 f6                	xor    %esi,%esi
45d5af:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
45d5b2:	66 39 70 08          	cmp    %si,0x8(%eax)
45d5b6:	8b 75 f4             	mov    -0xc(%ebp),%esi
45d5b9:	75 5f                	jne    0x45d61a
45d5bb:	83 38 10             	cmpl   $0x10,(%eax)
45d5be:	75 5a                	jne    0x45d61a
45d5c0:	41                   	inc    %ecx
45d5c1:	89 0f                	mov    %ecx,(%edi)
45d5c3:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
45d5c6:	0f bf 40 08          	movswl 0x8(%eax),%eax
45d5ca:	83 e8 49             	sub    $0x49,%eax
45d5cd:	74 14                	je     0x45d5e3
45d5cf:	48                   	dec    %eax
45d5d0:	0f 84 07 01 00 00    	je     0x45d6dd
45d5d6:	48                   	dec    %eax
45d5d7:	48                   	dec    %eax
45d5d8:	0f 84 e2 00 00 00    	je     0x45d6c0
45d5de:	8d 41 ff             	lea    -0x1(%ecx),%eax
45d5e1:	89 07                	mov    %eax,(%edi)
45d5e3:	c7 45 f8 0b 00 00 00 	movl   $0xb,-0x8(%ebp)
45d5ea:	ff 07                	incl   (%edi)
45d5ec:	8b 0f                	mov    (%edi),%ecx
45d5ee:	8b 43 04             	mov    0x4(%ebx),%eax
45d5f1:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d5f4:	66 83 78 08 05       	cmpw   $0x5,0x8(%eax)
45d5f9:	0f 85 35 01 00 00    	jne    0x45d734
45d5ff:	8b 30                	mov    (%eax),%esi
45d601:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45d604:	e8 17 56 fb ff       	call   0x412c20
45d609:	ff 07                	incl   (%edi)
45d60b:	8b 0f                	mov    (%edi),%ecx
45d60d:	89 75 d4             	mov    %esi,-0x2c(%ebp)
45d610:	8b 75 f4             	mov    -0xc(%ebp),%esi
45d613:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
45d61a:	8b 43 04             	mov    0x4(%ebx),%eax
45d61d:	6a 33                	push   $0x33
45d61f:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d622:	5a                   	pop    %edx
45d623:	66 39 50 08          	cmp    %dx,0x8(%eax)
45d627:	0f 85 01 01 00 00    	jne    0x45d72e
45d62d:	c7 45 08 7f 00 00 00 	movl   $0x7f,0x8(%ebp)
45d634:	8b 43 04             	mov    0x4(%ebx),%eax
45d637:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d63a:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45d63d:	ff 30                	push   (%eax)
45d63f:	e8 a9 98 fa ff       	call   0x406eed
45d644:	ff 07                	incl   (%edi)
45d646:	8b 0f                	mov    (%edi),%ecx
45d648:	8b 43 04             	mov    0x4(%ebx),%eax
45d64b:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45d64e:	66 83 78 08 41       	cmpw   $0x41,0x8(%eax)
45d653:	75 1c                	jne    0x45d671
45d655:	8d 41 01             	lea    0x1(%ecx),%eax
45d658:	6a ff                	push   $0xffffffff
45d65a:	89 07                	mov    %eax,(%edi)
45d65c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45d65f:	50                   	push   %eax
45d660:	57                   	push   %edi
45d661:	53                   	push   %ebx
45d662:	8b ce                	mov    %esi,%ecx
45d664:	e8 c7 27 fb ff       	call   0x40fe30
45d669:	85 c0                	test   %eax,%eax
45d66b:	0f 88 f3 00 00 00    	js     0x45d764
45d671:	ff 75 10             	push   0x10(%ebp)
45d674:	8d 45 f4             	lea    -0xc(%ebp),%eax
45d677:	50                   	push   %eax
45d678:	8d 45 0c             	lea    0xc(%ebp),%eax
45d67b:	50                   	push   %eax
45d67c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45d67f:	50                   	push   %eax
45d680:	e8 c0 ff fa ff       	call   0x40d645
45d685:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
45d689:	0f 85 e9 00 00 00    	jne    0x45d778
45d68f:	ff 75 10             	push   0x10(%ebp)
45d692:	8d 45 e4             	lea    -0x1c(%ebp),%eax
45d695:	68 00 01 00 00       	push   $0x100
45d69a:	50                   	push   %eax
45d69b:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45d69e:	50                   	push   %eax
45d69f:	e8 45 00 fb ff       	call   0x40d6e9
45d6a4:	8b 45 f8             	mov    -0x8(%ebp),%eax
45d6a7:	83 e8 0b             	sub    $0xb,%eax
45d6aa:	74 4b                	je     0x45d6f7
45d6ac:	48                   	dec    %eax
45d6ad:	74 3a                	je     0x45d6e9
45d6af:	48                   	dec    %eax
45d6b0:	75 51                	jne    0x45d703
45d6b2:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45d6b5:	50                   	push   %eax
45d6b6:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45d6b9:	e8 86 c8 fe ff       	call   0x449f44
45d6be:	eb 43                	jmp    0x45d703
45d6c0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
45d6c3:	e8 58 55 fb ff       	call   0x412c20
45d6c8:	33 c0                	xor    %eax,%eax
45d6ca:	40                   	inc    %eax
45d6cb:	89 45 f0             	mov    %eax,-0x10(%ebp)
45d6ce:	89 45 e4             	mov    %eax,-0x1c(%ebp)