4741b9:	a1 00 11 4c 00       	mov    0x4c1100,%eax
4741be:	85 c0                	test   %eax,%eax
4741c0:	0f 85 88 fe f8 ff    	jne    0x40404e
4741c6:	50                   	push   %eax
4741c7:	e9 75 fe f8 ff       	jmp    0x404041
4741cc:	8d 45 fc             	lea    -0x4(%ebp),%eax
4741cf:	50                   	push   %eax
4741d0:	53                   	push   %ebx
4741d1:	53                   	push   %ebx
4741d2:	53                   	push   %ebx
4741d3:	68 6c dc 49 00       	push   $0x49dc6c
4741d8:	ff 75 f8             	push   -0x8(%ebp)
4741db:	ff 15 28 d0 48 00    	call   *0x48d028
4741e1:	85 c0                	test   %eax,%eax
4741e3:	75 61                	jne    0x474246
4741e5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4741e8:	56                   	push   %esi
4741e9:	33 c9                	xor    %ecx,%ecx
4741eb:	6a 02                	push   $0x2
4741ed:	40                   	inc    %eax
4741ee:	5a                   	pop    %edx
4741ef:	f7 e2                	mul    %edx
4741f1:	0f 90 c1             	seto   %cl
4741f4:	f7 d9                	neg    %ecx
4741f6:	0b c8                	or     %eax,%ecx
4741f8:	51                   	push   %ecx
4741f9:	e8 ec b2 fa ff       	call   0x41f4ea
4741fe:	59                   	pop    %ecx
4741ff:	50                   	push   %eax
474200:	8d 4d f0             	lea    -0x10(%ebp),%ecx
474203:	e8 af 05 f9 ff       	call   0x4047b7
474208:	8b 75 f0             	mov    -0x10(%ebp),%esi
47420b:	8d 45 fc             	lea    -0x4(%ebp),%eax
47420e:	50                   	push   %eax
47420f:	56                   	push   %esi
474210:	53                   	push   %ebx
474211:	53                   	push   %ebx
474212:	68 6c dc 49 00       	push   $0x49dc6c
474217:	ff 75 f8             	push   -0x8(%ebp)
47421a:	ff 15 28 d0 48 00    	call   *0x48d028
474220:	85 c0                	test   %eax,%eax
474222:	75 19                	jne    0x47423d
474224:	8b 45 fc             	mov    -0x4(%ebp),%eax
474227:	d1 e8                	shr    $1,%eax
474229:	33 c9                	xor    %ecx,%ecx
47422b:	89 45 fc             	mov    %eax,-0x4(%ebp)
47422e:	66 89 0c 46          	mov    %cx,(%esi,%eax,2)
474232:	8b 4d 0c             	mov    0xc(%ebp),%ecx
474235:	56                   	push   %esi
474236:	e8 28 28 f9 ff       	call   0x406a63
47423b:	b3 01                	mov    $0x1,%bl
47423d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
474240:	e8 9d 05 f9 ff       	call   0x4047e2
474245:	5e                   	pop    %esi
474246:	ff 75 f8             	push   -0x8(%ebp)
474249:	ff 15 24 d0 48 00    	call   *0x48d024
47424f:	8a c3                	mov    %bl,%al
474251:	e9 d7 07 f9 ff       	jmp    0x404a2d
474256:	56                   	push   %esi
474257:	8b cf                	mov    %edi,%ecx
474259:	e8 40 73 fd ff       	call   0x44b59e
47425e:	50                   	push   %eax
47425f:	6a 01                	push   $0x1
474261:	e8 f5 72 fd ff       	call   0x44b55b
474266:	50                   	push   %eax
474267:	e8 42 e8 fa ff       	call   0x422aae
47426c:	83 c4 10             	add    $0x10,%esp
47426f:	8b f8                	mov    %eax,%edi
474271:	e9 9d a3 fa ff       	jmp    0x41e613
474276:	8b cf                	mov    %edi,%ecx
474278:	e8 ef 50 f9 ff       	call   0x40936c
47427d:	8b 47 08             	mov    0x8(%edi),%eax
474280:	ff 30                	push   (%eax)
474282:	ff 15 30 d2 48 00    	call   *0x48d230
474288:	e9 7b a3 fa ff       	jmp    0x41e608
47428d:	68 00 40 00 00       	push   $0x4000
474292:	e9 8d a3 fa ff       	jmp    0x41e624
474297:	83 f8 61             	cmp    $0x61,%eax
47429a:	0f 82 4b 82 fa ff    	jb     0x41c4eb
4742a0:	83 f8 66             	cmp    $0x66,%eax
4742a3:	0f 87 42 82 fa ff    	ja     0x41c4eb
4742a9:	83 e8 57             	sub    $0x57,%eax
4742ac:	e9 eb 81 fa ff       	jmp    0x41c49c
4742b1:	83 e8 0e             	sub    $0xe,%eax
4742b4:	0f 85 61 94 f9 ff    	jne    0x40d71b
4742ba:	8b 45 10             	mov    0x10(%ebp),%eax
4742bd:	0d 00 04 00 00       	or     $0x400,%eax
4742c2:	50                   	push   %eax
4742c3:	ff 75 0c             	push   0xc(%ebp)
4742c6:	b9 e8 20 4c 00       	mov    $0x4c20e8,%ecx
4742cb:	ff 75 08             	push   0x8(%ebp)
4742ce:	e9 43 94 f9 ff       	jmp    0x40d716
4742d3:	48                   	dec    %eax
4742d4:	0f 84 d7 95 f9 ff    	je     0x40d8b1
4742da:	83 e8 0e             	sub    $0xe,%eax
4742dd:	0f 85 b5 95 f9 ff    	jne    0x40d898
4742e3:	b9 e8 20 4c 00       	mov    $0x4c20e8,%ecx
4742e8:	ff 75 0c             	push   0xc(%ebp)
4742eb:	ff 75 08             	push   0x8(%ebp)
4742ee:	e8 ed 99 fa ff       	call   0x41dce0
4742f3:	e9 99 95 f9 ff       	jmp    0x40d891
4742f8:	39 1d f0 20 4c 00    	cmp    %ebx,0x4c20f0
4742fe:	0f 84 ad 95 f9 ff    	je     0x40d8b1
474304:	ff 75 0c             	push   0xc(%ebp)
474307:	b9 f0 20 4c 00       	mov    $0x4c20f0,%ecx
47430c:	ff 75 08             	push   0x8(%ebp)
47430f:	e8 6b 3e fd ff       	call   0x44817f
474314:	8b c8                	mov    %eax,%ecx
474316:	e8 c5 99 fa ff       	call   0x41dce0
47431b:	85 c0                	test   %eax,%eax
47431d:	0f 85 72 95 f9 ff    	jne    0x40d895
474323:	e9 89 95 f9 ff       	jmp    0x40d8b1
474328:	ff 75 10             	push   0x10(%ebp)
47432b:	b9 f0 20 4c 00       	mov    $0x4c20f0,%ecx
474330:	ff 75 08             	push   0x8(%ebp)
474333:	e8 47 3e fd ff       	call   0x44817f
474338:	8b c8                	mov    %eax,%ecx
47433a:	e8 a1 99 fa ff       	call   0x41dce0
47433f:	8b f0                	mov    %eax,%esi
474341:	85 f6                	test   %esi,%esi
474343:	0f 85 51 93 f9 ff    	jne    0x40d69a
474349:	e9 60 93 f9 ff       	jmp    0x40d6ae
47434e:	8b 4e 04             	mov    0x4(%esi),%ecx
474351:	8b 79 08             	mov    0x8(%ecx),%edi
474354:	85 c9                	test   %ecx,%ecx
474356:	74 06                	je     0x47435e
474358:	51                   	push   %ecx
474359:	e8 3c 99 fc ff       	call   0x43dc9a
47435e:	89 7e 04             	mov    %edi,0x4(%esi)
474361:	c6 46 09 00          	movb   $0x0,0x9(%esi)
474365:	e9 84 9a f9 ff       	jmp    0x40ddee
47436a:	8b 55 08             	mov    0x8(%ebp),%edx
47436d:	8b 77 04             	mov    0x4(%edi),%esi
474370:	8b 02                	mov    (%edx),%eax
474372:	89 06                	mov    %eax,(%esi)
474374:	8b 42 04             	mov    0x4(%edx),%eax
474377:	89 46 04             	mov    %eax,0x4(%esi)
47437a:	c6 47 09 00          	movb   $0x0,0x9(%edi)
47437e:	e9 39 e8 f8 ff       	jmp    0x402bbc
474383:	56                   	push   %esi
474384:	8b 75 0c             	mov    0xc(%ebp),%esi
474387:	33 ff                	xor    %edi,%edi
474389:	8b cf                	mov    %edi,%ecx
47438b:	3b 75 14             	cmp    0x14(%ebp),%esi
47438e:	77 03                	ja     0x474393
474390:	8b 75 14             	mov    0x14(%ebp),%esi
474393:	85 f6                	test   %esi,%esi
474395:	74 3c                	je     0x4743d3
474397:	8b 45 08             	mov    0x8(%ebp),%eax
47439a:	53                   	push   %ebx
47439b:	8b 5d 10             	mov    0x10(%ebp),%ebx
47439e:	2b c3                	sub    %ebx,%eax
4743a0:	89 45 14             	mov    %eax,0x14(%ebp)
4743a3:	0f b7 14 18          	movzwl (%eax,%ebx,1),%edx
4743a7:	4e                   	dec    %esi
4743a8:	66 3b 13             	cmp    (%ebx),%dx
4743ab:	74 1e                	je     0x4743cb
4743ad:	52                   	push   %edx
4743ae:	e8 29 eb fa ff       	call   0x422edc
4743b3:	0f b7 f8             	movzwl %ax,%edi
4743b6:	0f b7 03             	movzwl (%ebx),%eax
4743b9:	50                   	push   %eax
4743ba:	e8 1d eb fa ff       	call   0x422edc
4743bf:	59                   	pop    %ecx
4743c0:	59                   	pop    %ecx
4743c1:	0f b7 c8             	movzwl %ax,%ecx
4743c4:	3b f9                	cmp    %ecx,%edi
4743c6:	75 0a                	jne    0x4743d2
4743c8:	8b 45 14             	mov    0x14(%ebp),%eax
4743cb:	83 c3 02             	add    $0x2,%ebx
4743ce:	85 f6                	test   %esi,%esi
4743d0:	75 d1                	jne    0x4743a3
4743d2:	5b                   	pop    %ebx
4743d3:	2b f9                	sub    %ecx,%edi
4743d5:	5e                   	pop    %esi
4743d6:	79 08                	jns    0x4743e0
4743d8:	83 c8 ff             	or     $0xffffffff,%eax
4743db:	e9 ce 8f fa ff       	jmp    0x41d3ae
4743e0:	33 c0                	xor    %eax,%eax
4743e2:	85 ff                	test   %edi,%edi
4743e4:	0f 9f c0             	setg   %al
4743e7:	e9 c2 8f fa ff       	jmp    0x41d3ae
4743ec:	8b 4e 08             	mov    0x8(%esi),%ecx
4743ef:	8b 79 10             	mov    0x10(%ecx),%edi
4743f2:	85 c9                	test   %ecx,%ecx
4743f4:	74 06                	je     0x4743fc
4743f6:	51                   	push   %ecx
4743f7:	e8 1a 82 fa ff       	call   0x41c616
4743fc:	89 7e 08             	mov    %edi,0x8(%esi)
4743ff:	c6 46 0d 00          	movb   $0x0,0xd(%esi)
474403:	e9 ef 81 fa ff       	jmp    0x41c5f7
474408:	ff 37                	push   (%edi)
47440a:	e8 4f b1 fa ff       	call   0x41f55e
47440f:	ff 77 0c             	push   0xc(%edi)
474412:	e8 47 b1 fa ff       	call   0x41f55e
474417:	59                   	pop    %ecx
474418:	59                   	pop    %ecx
474419:	e9 39 78 f9 ff       	jmp    0x40bc57
47441e:	6a 20                	push   $0x20
474420:	e8 c5 b0 fa ff       	call   0x41f4ea
474425:	8b f8                	mov    %eax,%edi
474427:	59                   	pop    %ecx
474428:	85 ff                	test   %edi,%edi
47442a:	74 09                	je     0x474435
47442c:	8b cf                	mov    %edi,%ecx
47442e:	e8 c4 93 f9 ff       	call   0x40d7f7
474433:	eb 02                	jmp    0x474437
474435:	33 ff                	xor    %edi,%edi
474437:	53                   	push   %ebx
474438:	8b cf                	mov    %edi,%ecx
47443a:	89 3e                	mov    %edi,(%esi)
47443c:	e8 ac 2a f9 ff       	call   0x406eed
474441:	8b 0e                	mov    (%esi),%ecx
474443:	8b 43 10             	mov    0x10(%ebx),%eax
474446:	89 41 10             	mov    %eax,0x10(%ecx)
474449:	8b 0e                	mov    (%esi),%ecx
47444b:	8b 43 14             	mov    0x14(%ebx),%eax
47444e:	89 41 14             	mov    %eax,0x14(%ecx)
474451:	8b 06                	mov    (%esi),%eax
474453:	8b 4d fc             	mov    -0x4(%ebp),%ecx
474456:	83 60 18 00          	andl   $0x0,0x18(%eax)
47445a:	8b 06                	mov    (%esi),%eax
47445c:	83 60 1c 00          	andl   $0x0,0x1c(%eax)
474460:	8b 06                	mov    (%esi),%eax
474462:	ff 73 18             	push   0x18(%ebx)
474465:	83 c0 18             	add    $0x18,%eax
474468:	50                   	push   %eax
474469:	e8 60 e7 f8 ff       	call   0x402bce
47446e:	8b 36                	mov    (%esi),%esi
474470:	8b 5b 1c             	mov    0x1c(%ebx),%ebx
474473:	83 c6 1c             	add    $0x1c,%esi
474476:	e9 63 e7 f8 ff       	jmp    0x402bde
47447b:	85 c9                	test   %ecx,%ecx
47447d:	0f 85 0a 96 f9 ff    	jne    0x40da8d
474483:	85 db                	test   %ebx,%ebx
474485:	0f 85 b6 95 f9 ff    	jne    0x40da41
47448b:	e9 73 95 f9 ff       	jmp    0x40da03
474490:	ff 75 0c             	push   0xc(%ebp)
474493:	8b 49 14             	mov    0x14(%ecx),%ecx
474496:	e8 13 98 f9 ff       	call   0x40dcae
47449b:	e9 46 93 f9 ff       	jmp    0x40d7e6
4744a0:	dc 25 f8 26 4b 00    	fsubl  0x4b26f8
4744a6:	dd 5d f8             	fstpl  -0x8(%ebp)
4744a9:	8b 7d f8             	mov    -0x8(%ebp),%edi
4744ac:	2b 7d 10             	sub    0x10(%ebp),%edi
4744af:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4744b2:	1b 4d 14             	sbb    0x14(%ebp),%ecx
4744b5:	83 ef 0a             	sub    $0xa,%edi
4744b8:	83 d9 00             	sbb    $0x0,%ecx
4744bb:	2b 5d 10             	sub    0x10(%ebp),%ebx
4744be:	1b 45 14             	sbb    0x14(%ebp),%eax
4744c1:	3b c1                	cmp    %ecx,%eax
4744c3:	0f 8c e7 8b f9 ff    	jl     0x40d0b0
4744c9:	7f 08                	jg     0x4744d3
4744cb:	3b df                	cmp    %edi,%ebx
4744cd:	0f 82 dd 8b f9 ff    	jb     0x40d0b0
4744d3:	83 c6 ff             	add    $0xffffffff,%esi
4744d6:	83 d2 ff             	adc    $0xffffffff,%edx
4744d9:	e9 d2 8b f9 ff       	jmp    0x40d0b0
4744de:	33 d2                	xor    %edx,%edx
4744e0:	e9 96 4b f9 ff       	jmp    0x40907b
4744e5:	33 c0                	xor    %eax,%eax
4744e7:	e9 59 e4 f8 ff       	jmp    0x402945
4744ec:	8b 06                	mov    (%esi),%eax
4744ee:	85 c0                	test   %eax,%eax
4744f0:	0f 84 bc 9b f9 ff    	je     0x40e0b2
4744f6:	50                   	push   %eax
4744f7:	ff 15 4c d4 48 00    	call   *0x48d44c
4744fd:	ff 36                	push   (%esi)
4744ff:	e8 5a b0 fa ff       	call   0x41f55e
474504:	83 c4 04             	add    $0x4,%esp
474507:	e9 a6 9b f9 ff       	jmp    0x40e0b2
47450c:	8b 0e                	mov    (%esi),%ecx
47450e:	85 c9                	test   %ecx,%ecx
474510:	0f 84 9c 9b f9 ff    	je     0x40e0b2
474516:	51                   	push   %ecx
474517:	e8 4f 5c fd ff       	call   0x44a16b
47451c:	e9 91 9b f9 ff       	jmp    0x40e0b2
474521:	8b 06                	mov    (%esi),%eax
474523:	ff 70 04             	push   0x4(%eax)
474526:	e8 33 b0 fa ff       	call   0x41f55e
47452b:	ff 36                	push   (%esi)
47452d:	e8 2c b0 fa ff       	call   0x41f55e
474532:	83 c4 08             	add    $0x8,%esp
474535:	e9 78 9b f9 ff       	jmp    0x40e0b2
47453a:	8b 0e                	mov    (%esi),%ecx
47453c:	85 c9                	test   %ecx,%ecx
47453e:	0f 84 6e 9b f9 ff    	je     0x40e0b2
474544:	51                   	push   %ecx
474545:	e8 79 52 fc ff       	call   0x4397c3
47454a:	e9 63 9b f9 ff       	jmp    0x40e0b2
47454f:	8b 0e                	mov    (%esi),%ecx
474551:	85 c9                	test   %ecx,%ecx
474553:	0f 84 59 9b f9 ff    	je     0x40e0b2
474559:	51                   	push   %ecx
47455a:	e8 8e 52 fc ff       	call   0x4397ed
47455f:	e9 4e 9b f9 ff       	jmp    0x40e0b2
474564:	8b 0e                	mov    (%esi),%ecx
474566:	85 c9                	test   %ecx,%ecx
474568:	0f 84 44 9b f9 ff    	je     0x40e0b2
47456e:	51                   	push   %ecx
47456f:	e8 25 e5 f8 ff       	call   0x402a99
474574:	e9 39 9b f9 ff       	jmp    0x40e0b2
474579:	83 3e 00             	cmpl   $0x0,(%esi)
47457c:	0f 84 6d 97 f9 ff    	je     0x40dcef
474582:	ff 36                	push   (%esi)
474584:	ff 15 4c d4 48 00    	call   *0x48d44c
47458a:	ff 36                	push   (%esi)
47458c:	e8 cd af fa ff       	call   0x41f55e
474591:	eb 12                	jmp    0x4745a5
474593:	8b 06                	mov    (%esi),%eax
474595:	ff 70 04             	push   0x4(%eax)
474598:	e8 c1 af fa ff       	call   0x41f55e
47459d:	ff 36                	push   (%esi)
47459f:	e8 ba af fa ff       	call   0x41f55e
4745a4:	59                   	pop    %ecx
4745a5:	59                   	pop    %ecx
4745a6:	e9 44 97 f9 ff       	jmp    0x40dcef
4745ab:	83 f8 0c             	cmp    $0xc,%eax
4745ae:	74 3e                	je     0x4745ee
4745b0:	0f 8e 39 97 f9 ff    	jle    0x40dcef
4745b6:	83 f8 0e             	cmp    $0xe,%eax
4745b9:	7e 1e                	jle    0x4745d9
4745bb:	83 f8 0f             	cmp    $0xf,%eax
4745be:	0f 85 2b 97 f9 ff    	jne    0x40dcef
4745c4:	8b 0e                	mov    (%esi),%ecx
4745c6:	85 c9                	test   %ecx,%ecx
4745c8:	0f 84 21 97 f9 ff    	je     0x40dcef
4745ce:	51                   	push   %ecx
4745cf:	e8 19 52 fc ff       	call   0x4397ed
4745d4:	e9 16 97 f9 ff       	jmp    0x40dcef
4745d9:	8b 0e                	mov    (%esi),%ecx
4745db:	85 c9                	test   %ecx,%ecx
4745dd:	0f 84 0c 97 f9 ff    	je     0x40dcef
4745e3:	51                   	push   %ecx
4745e4:	e8 b0 e4 f8 ff       	call   0x402a99
4745e9:	e9 01 97 f9 ff       	jmp    0x40dcef
4745ee:	8b 0e                	mov    (%esi),%ecx
4745f0:	85 c9                	test   %ecx,%ecx
4745f2:	0f 84 f7 96 f9 ff    	je     0x40dcef
4745f8:	51                   	push   %ecx
4745f9:	e8 c5 51 fc ff       	call   0x4397c3
4745fe:	e9 ec 96 f9 ff       	jmp    0x40dcef
474603:	ff 37                	push   (%edi)
474605:	e8 54 af fa ff       	call   0x41f55e
47460a:	ff 77 0c             	push   0xc(%edi)
47460d:	e8 4c af fa ff       	call   0x41f55e
474612:	83 c4 08             	add    $0x8,%esp
474615:	e9 c2 e5 f9 ff       	jmp    0x412bdc
47461a:	8b c7                	mov    %edi,%eax