44520d:	8b 97 c8 01 00 00    	mov    0x1c8(%edi),%edx
445213:	89 4c 24 18          	mov    %ecx,0x18(%esp)
445217:	85 d2                	test   %edx,%edx
445219:	74 24                	je     0x44523f
44521b:	8b b7 c4 01 00 00    	mov    0x1c4(%edi),%esi
445221:	8b 7c 24 08          	mov    0x8(%esp),%edi
445225:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
445228:	8b 00                	mov    (%eax),%eax
44522a:	85 c0                	test   %eax,%eax
44522c:	74 04                	je     0x445232
44522e:	39 38                	cmp    %edi,(%eax)
445230:	74 05                	je     0x445237
445232:	41                   	inc    %ecx
445233:	3b ca                	cmp    %edx,%ecx
445235:	72 ee                	jb     0x445225
445237:	8b 7c 24 44          	mov    0x44(%esp),%edi
44523b:	89 4c 24 18          	mov    %ecx,0x18(%esp)
44523f:	3b ca                	cmp    %edx,%ecx
445241:	74 4b                	je     0x44528e
445243:	8b 87 c4 01 00 00    	mov    0x1c4(%edi),%eax
445249:	8b 04 88             	mov    (%eax,%ecx,4),%eax
44524c:	8b cf                	mov    %edi,%ecx
44524e:	8b 00                	mov    (%eax),%eax
445250:	83 c0 08             	add    $0x8,%eax
445253:	50                   	push   %eax
445254:	e8 64 4d fc ff       	call   0x409fbd
445259:	8b 8f c4 01 00 00    	mov    0x1c4(%edi),%ecx
44525f:	8b f0                	mov    %eax,%esi
445261:	8b 44 24 18          	mov    0x18(%esp),%eax
445265:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
445268:	8b 09                	mov    (%ecx),%ecx
44526a:	83 c1 18             	add    $0x18,%ecx
44526d:	51                   	push   %ecx
44526e:	8d 8f 4c 01 00 00    	lea    0x14c(%edi),%ecx
445274:	e8 2e 2f fc ff       	call   0x4081a7
445279:	8b 46 10             	mov    0x10(%esi),%eax
44527c:	8b cf                	mov    %edi,%ecx
44527e:	6a 00                	push   $0x0
445280:	6a 01                	push   $0x1
445282:	40                   	inc    %eax
445283:	50                   	push   %eax
445284:	e8 13 66 fc ff       	call   0x40b89c
445289:	e9 a3 bb fc ff       	jmp    0x410e31
44528e:	8b 35 f0 f6 48 00    	mov    0x48f6f0,%esi
445294:	ba 02 00 00 00       	mov    $0x2,%edx
445299:	e9 53 b9 fc ff       	jmp    0x410bf1
44529e:	80 3d 81 62 4c 00 00 	cmpb   $0x0,0x4c6281
4452a5:	0f 85 53 b9 fc ff    	jne    0x410bfe
4452ab:	6a 0a                	push   $0xa
4452ad:	ff 15 7c f1 48 00    	call   *0x48f17c
4452b3:	e9 7f bb fc ff       	jmp    0x410e37
4452b8:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
4452be:	0f 86 d3 bb fc ff    	jbe    0x410e97
4452c4:	e9 cd bb fc ff       	jmp    0x410e96
4452c9:	8d 44 24 18          	lea    0x18(%esp),%eax
4452cd:	8b cf                	mov    %edi,%ecx
4452cf:	50                   	push   %eax
4452d0:	e8 1e 51 02 00       	call   0x46a3f3
4452d5:	e9 66 b9 fc ff       	jmp    0x410c40
4452da:	a1 e0 67 4c 00       	mov    0x4c67e0,%eax
4452df:	8d 8c 24 94 00 00 00 	lea    0x94(%esp),%ecx
4452e6:	8b 30                	mov    (%eax),%esi
4452e8:	56                   	push   %esi
4452e9:	e8 b1 0f 04 00       	call   0x48629f
4452ee:	b9 dc 67 4c 00       	mov    $0x4c67dc,%ecx
4452f3:	e8 85 f3 fb ff       	call   0x40467d
4452f8:	85 f6                	test   %esi,%esi
4452fa:	74 08                	je     0x445304
4452fc:	51                   	push   %ecx
4452fd:	8b ce                	mov    %esi,%ecx
4452ff:	e8 61 f3 fb ff       	call   0x404665
445304:	83 bc 24 9c 00 00 00 	cmpl   $0x0,0x9c(%esp)
44530b:	00
44530c:	c7 05 20 74 4c 00 00 	movl   $0x0,0x4c7420
445313:	00 00 00
445316:	0f 84 d4 b9 fc ff    	je     0x410cf0
44531c:	8d 84 24 98 00 00 00 	lea    0x98(%esp),%eax
445323:	8b cf                	mov    %edi,%ecx
445325:	50                   	push   %eax
445326:	e8 92 4c fc ff       	call   0x409fbd
44532b:	8b f0                	mov    %eax,%esi
44532d:	85 f6                	test   %esi,%esi
44532f:	0f 84 bb b9 fc ff    	je     0x410cf0
445335:	8d 4c 24 70          	lea    0x70(%esp),%ecx
445339:	c7 44 24 70 00 00 00 	movl   $0x0,0x70(%esp)
445340:	00
445341:	c7 44 24 78 00 00 00 	movl   $0x0,0x78(%esp)
445348:	00
445349:	c7 44 24 7c 01 00 00 	movl   $0x1,0x7c(%esp)
445350:	00
445351:	e8 ca 46 fc ff       	call   0x409a20
445356:	8b 84 24 94 00 00 00 	mov    0x94(%esp),%eax
44535d:	8d 8c 24 2c 01 00 00 	lea    0x12c(%esp),%ecx
445364:	68 dc 2e 4a 00       	push   $0x4a2edc
445369:	c7 84 24 80 00 00 00 	movl   $0x1,0x80(%esp)
445370:	01 00 00 00
445374:	89 44 24 74          	mov    %eax,0x74(%esp)
445378:	e8 c4 2b fc ff       	call   0x407f41
44537d:	6a 01                	push   $0x1
44537f:	8d 44 24 74          	lea    0x74(%esp),%eax
445383:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
445388:	50                   	push   %eax
445389:	8d 84 24 34 01 00 00 	lea    0x134(%esp),%eax
445390:	50                   	push   %eax
445391:	e8 7d 37 fc ff       	call   0x408b13
445396:	8d 8c 24 2c 01 00 00 	lea    0x12c(%esp),%ecx
44539d:	e8 c2 06 fc ff       	call   0x405a64
4453a2:	8d 4c 24 70          	lea    0x70(%esp),%ecx
4453a6:	e8 75 46 fc ff       	call   0x409a20
4453ab:	8b 84 24 a8 00 00 00 	mov    0xa8(%esp),%eax
4453b2:	8d 8c 24 fc 00 00 00 	lea    0xfc(%esp),%ecx
4453b9:	68 f4 2e 4a 00       	push   $0x4a2ef4
4453be:	c7 84 24 80 00 00 00 	movl   $0x7,0x80(%esp)
4453c5:	07 00 00 00
4453c9:	89 44 24 74          	mov    %eax,0x74(%esp)
4453cd:	e8 6f 2b fc ff       	call   0x407f41
4453d2:	6a 01                	push   $0x1
4453d4:	8d 44 24 74          	lea    0x74(%esp),%eax
4453d8:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
4453dd:	50                   	push   %eax
4453de:	8d 84 24 04 01 00 00 	lea    0x104(%esp),%eax
4453e5:	50                   	push   %eax
4453e6:	e8 28 37 fc ff       	call   0x408b13
4453eb:	8d 8c 24 fc 00 00 00 	lea    0xfc(%esp),%ecx
4453f2:	e8 6d 06 fc ff       	call   0x405a64
4453f7:	8d 4c 24 70          	lea    0x70(%esp),%ecx
4453fb:	e8 20 46 fc ff       	call   0x409a20
445400:	8b 84 24 ac 00 00 00 	mov    0xac(%esp),%eax
445407:	8d 8c 24 1c 01 00 00 	lea    0x11c(%esp),%ecx
44540e:	68 14 2f 4a 00       	push   $0x4a2f14
445413:	c7 84 24 80 00 00 00 	movl   $0x7,0x80(%esp)
44541a:	07 00 00 00
44541e:	89 44 24 74          	mov    %eax,0x74(%esp)
445422:	e8 1a 2b fc ff       	call   0x407f41
445427:	6a 01                	push   $0x1
445429:	8d 44 24 74          	lea    0x74(%esp),%eax
44542d:	b9 70 72 4c 00       	mov    $0x4c7270,%ecx
445432:	50                   	push   %eax
445433:	8d 84 24 24 01 00 00 	lea    0x124(%esp),%eax
44543a:	50                   	push   %eax
44543b:	e8 d3 36 fc ff       	call   0x408b13
445440:	8d 8c 24 1c 01 00 00 	lea    0x11c(%esp),%ecx
445447:	e8 18 06 fc ff       	call   0x405a64
44544c:	c6 87 58 04 00 00 01 	movb   $0x1,0x458(%edi)
445453:	8b cf                	mov    %edi,%ecx
445455:	8b 46 10             	mov    0x10(%esi),%eax
445458:	6a 00                	push   $0x0
44545a:	6a 01                	push   $0x1
44545c:	40                   	inc    %eax
44545d:	50                   	push   %eax
44545e:	e8 39 64 fc ff       	call   0x40b89c
445463:	8d 4c 24 70          	lea    0x70(%esp),%ecx
445467:	c6 87 58 04 00 00 00 	movb   $0x0,0x458(%edi)
44546e:	e8 ad 45 fc ff       	call   0x409a20
445473:	8d 8c 24 98 00 00 00 	lea    0x98(%esp),%ecx
44547a:	e8 e5 05 fc ff       	call   0x405a64
44547f:	e9 ad b9 fc ff       	jmp    0x410e31
445484:	83 3d 1c 69 4c 00 00 	cmpl   $0x0,0x4c691c
44548b:	75 13                	jne    0x4454a0
44548d:	83 3d 20 74 4c 00 64 	cmpl   $0x64,0x4c7420
445494:	7d 0a                	jge    0x4454a0
445496:	ff 05 20 74 4c 00    	incl   0x4c7420
44549c:	6a 00                	push   $0x0
44549e:	eb 02                	jmp    0x4454a2
4454a0:	6a 0a                	push   $0xa
4454a2:	ff 15 7c f1 48 00    	call   *0x48f17c
4454a8:	e9 5d b8 fc ff       	jmp    0x410d0a
4454ad:	80 bf 84 04 00 00 01 	cmpb   $0x1,0x484(%edi)
4454b4:	0f 84 80 b8 fc ff    	je     0x410d3a
4454ba:	33 c0                	xor    %eax,%eax
4454bc:	c6 87 84 04 00 00 01 	movb   $0x1,0x484(%edi)
4454c3:	ff b7 88 01 00 00    	push   0x188(%edi)
4454c9:	8d 8c 24 f0 00 00 00 	lea    0xf0(%esp),%ecx
4454d0:	c7 44 24 68 00 00 00 	movl   $0x0,0x68(%esp)
4454d7:	00
4454d8:	c7 84 24 bc 00 00 00 	movl   $0x48fb84,0xbc(%esp)
4454df:	84 fb 48 00
4454e3:	89 44 24 18          	mov    %eax,0x18(%esp)
4454e7:	89 84 24 c0 00 00 00 	mov    %eax,0xc0(%esp)
4454ee:	89 84 24 c4 00 00 00 	mov    %eax,0xc4(%esp)
4454f5:	89 84 24 c8 00 00 00 	mov    %eax,0xc8(%esp)
4454fc:	e8 9e 47 02 00       	call   0x469c9f
445501:	8d 8f 84 01 00 00    	lea    0x184(%edi),%ecx
445507:	e8 d7 84 01 00       	call   0x45d9e3
44550c:	8b b4 24 f0 00 00 00 	mov    0xf0(%esp),%esi
445513:	8d 8c 24 80 00 00 00 	lea    0x80(%esp),%ecx
44551a:	c7 84 24 88 00 00 00 	movl   $0x0,0x88(%esp)
445521:	00 00 00 00
445525:	ff 36                	push   (%esi)
445527:	e8 94 45 fc ff       	call   0x409ac0
44552c:	8b 76 04             	mov    0x4(%esi),%esi
44552f:	8b ce                	mov    %esi,%ecx
445531:	e8 61 44 fc ff       	call   0x409997
445536:	ff 76 08             	push   0x8(%esi)
445539:	8b cf                	mov    %edi,%ecx
44553b:	e8 7d 4a fc ff       	call   0x409fbd
445540:	8b d0                	mov    %eax,%edx
445542:	89 54 24 20          	mov    %edx,0x20(%esp)
445546:	8b 4a 10             	mov    0x10(%edx),%ecx
445549:	51                   	push   %ecx
44554a:	e8 79 1c fc ff       	call   0x4071c8
44554f:	89 8f f4 00 00 00    	mov    %ecx,0xf4(%edi)
445555:	be 03 00 00 00       	mov    $0x3,%esi
44555a:	83 7a 14 00          	cmpl   $0x0,0x14(%edx)
44555e:	89 44 24 3c          	mov    %eax,0x3c(%esp)
445562:	0f 8e 5a 01 00 00    	jle    0x4456c2
445568:	8b 94 24 f0 00 00 00 	mov    0xf0(%esp),%edx
44556f:	83 c2 08             	add    $0x8,%edx
445572:	89 54 24 24          	mov    %edx,0x24(%esp)
445576:	8b 48 04             	mov    0x4(%eax),%ecx
445579:	89 4c 24 18          	mov    %ecx,0x18(%esp)
44557d:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
445580:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
445585:	75 48                	jne    0x4455cf
445587:	8b 54 24 3c          	mov    0x3c(%esp),%edx
44558b:	8b 52 04             	mov    0x4(%edx),%edx
44558e:	8b 44 b2 04          	mov    0x4(%edx,%esi,4),%eax
445592:	66 83 78 08 33       	cmpw   $0x33,0x8(%eax)
445597:	74 13                	je     0x4455ac
445599:	8b c8                	mov    %eax,%ecx
44559b:	8b 04 b2             	mov    (%edx,%esi,4),%eax
44559e:	8b 00                	mov    (%eax),%eax
4455a0:	3b 01                	cmp    (%ecx),%eax
4455a2:	0f 84 9d 00 00 00    	je     0x445645
4455a8:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4455ac:	8b 04 b2             	mov    (%edx,%esi,4),%eax
4455af:	8b 00                	mov    (%eax),%eax
4455b1:	83 f8 24             	cmp    $0x24,%eax
4455b4:	74 09                	je     0x4455bf
4455b6:	83 f8 1e             	cmp    $0x1e,%eax
4455b9:	0f 85 86 00 00 00    	jne    0x445645
4455bf:	8b 44 b1 04          	mov    0x4(%ecx,%esi,4),%eax
4455c3:	46                   	inc    %esi
4455c4:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
4455c9:	74 c3                	je     0x44558e
4455cb:	8b 54 24 24          	mov    0x24(%esp),%edx
4455cf:	8b 44 b1 04          	mov    0x4(%ecx,%esi,4),%eax
4455d3:	46                   	inc    %esi
4455d4:	66 83 78 08 41       	cmpw   $0x41,0x8(%eax)
4455d9:	75 24                	jne    0x4455ff
4455db:	8b 54 24 18          	mov    0x18(%esp),%edx
4455df:	46                   	inc    %esi
4455e0:	33 c9                	xor    %ecx,%ecx
4455e2:	8b 04 b2             	mov    (%edx,%esi,4),%eax
4455e5:	0f b7 40 08          	movzwl 0x8(%eax),%eax
4455e9:	66 83 f8 47          	cmp    $0x47,%ax
4455ed:	75 03                	jne    0x4455f2
4455ef:	41                   	inc    %ecx
4455f0:	eb 50                	jmp    0x445642
4455f2:	66 83 f8 48          	cmp    $0x48,%ax
4455f6:	75 40                	jne    0x445638
4455f8:	49                   	dec    %ecx
4455f9:	79 47                	jns    0x445642
4455fb:	8b 54 24 24          	mov    0x24(%esp),%edx
4455ff:	ff 32                	push   (%edx)
445601:	8d 8c 24 bc 00 00 00 	lea    0xbc(%esp),%ecx
445608:	e8 58 10 01 00       	call   0x456665
44560d:	8b 4c 24 64          	mov    0x64(%esp),%ecx
445611:	46                   	inc    %esi
445612:	8b 44 24 20          	mov    0x20(%esp),%eax
445616:	41                   	inc    %ecx
445617:	8b 54 24 24          	mov    0x24(%esp),%edx
44561b:	83 c2 04             	add    $0x4,%edx
44561e:	89 4c 24 64          	mov    %ecx,0x64(%esp)
445622:	89 54 24 24          	mov    %edx,0x24(%esp)
445626:	3b 48 14             	cmp    0x14(%eax),%ecx
445629:	0f 8d 84 00 00 00    	jge    0x4456b3
44562f:	8b 44 24 3c          	mov    0x3c(%esp),%eax
445633:	e9 3e ff ff ff       	jmp    0x445576
445638:	66 83 f8 40          	cmp    $0x40,%ax
44563c:	75 04                	jne    0x445642
44563e:	85 c9                	test   %ecx,%ecx
445640:	74 b9                	je     0x4455fb
445642:	46                   	inc    %esi
445643:	eb 9d                	jmp    0x4455e2
445645:	8b 44 24 3c          	mov    0x3c(%esp),%eax
445649:	8b cf                	mov    %edi,%ecx
44564b:	8b 40 04             	mov    0x4(%eax),%eax
44564e:	8b 44 b0 04          	mov    0x4(%eax,%esi,4),%eax
445652:	0f bf 40 0a          	movswl 0xa(%eax),%eax
445656:	50                   	push   %eax
445657:	68 91 00 00 00       	push   $0x91
44565c:	e8 54 4a 02 00       	call   0x46a0b5
445661:	eb 20                	jmp    0x445683
445663:	8b ce                	mov    %esi,%ecx
445665:	e8 fa 03 fc ff       	call   0x405a64
44566a:	56                   	push   %esi
44566b:	e8 fc b9 fd ff       	call   0x42106c
445670:	83 c4 04             	add    $0x4,%esp
445673:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%esp)
44567a:	00
44567b:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%esp)
445682:	00
445683:	8d 8c 24 80 00 00 00 	lea    0x80(%esp),%ecx
44568a:	e8 61 47 fc ff       	call   0x409df0
44568f:	8d 8c 24 ec 00 00 00 	lea    0xec(%esp),%ecx
445696:	e8 59 10 01 00       	call   0x4566f4
44569b:	8d 8c 24 b8 00 00 00 	lea    0xb8(%esp),%ecx
4456a2:	e8 4d 10 01 00       	call   0x4566f4
4456a7:	c6 87 84 04 00 00 00 	movb   $0x0,0x484(%edi)
4456ae:	e9 87 b6 fc ff       	jmp    0x410d3a
4456b3:	8b 84 24 bc 00 00 00 	mov    0xbc(%esp),%eax
4456ba:	8b 54 24 20          	mov    0x20(%esp),%edx
4456be:	89 44 24 14          	mov    %eax,0x14(%esp)
4456c2:	ff 72 10             	push   0x10(%edx)
4456c5:	e8 97 2e fc ff       	call   0x408561
4456ca:	8b 44 24 20          	mov    0x20(%esp),%eax
4456ce:	be 03 00 00 00       	mov    $0x3,%esi
4456d3:	89 74 24 4c          	mov    %esi,0x4c(%esp)
4456d7:	c7 44 24 18 01 00 00 	movl   $0x1,0x18(%esp)
4456de:	00
4456df:	83 78 14 01          	cmpl   $0x1,0x14(%eax)
4456e3:	0f 8c 31 02 00 00    	jl     0x44591a
4456e9:	8b 44 24 3c          	mov    0x3c(%esp),%eax
4456ed:	33 d2                	xor    %edx,%edx
4456ef:	89 54 24 6c          	mov    %edx,0x6c(%esp)
4456f3:	8b 48 04             	mov    0x4(%eax),%ecx
4456f6:	89 4c 24 08          	mov    %ecx,0x8(%esp)
4456fa:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
4456fd:	66 39 50 08          	cmp    %dx,0x8(%eax)
445701:	75 27                	jne    0x44572a
445703:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
445706:	8b 00                	mov    (%eax),%eax
445708:	83 f8 24             	cmp    $0x24,%eax
44570b:	74 0a                	je     0x445717
44570d:	83 f8 1e             	cmp    $0x1e,%eax
445710:	75 06                	jne    0x445718
445712:	ba 00 01 00 00       	mov    $0x100,%edx
445717:	46                   	inc    %esi
445718:	8b 04 b1             	mov    (%ecx,%esi,4),%eax
44571b:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
445720:	74 e1                	je     0x445703
445722:	89 54 24 6c          	mov    %edx,0x6c(%esp)
445726:	89 74 24 4c          	mov    %esi,0x4c(%esp)
44572a:	8b 7c 24 08          	mov    0x8(%esp),%edi
44572e:	8d 14 b5 04 00 00 00 	lea    0x4(,%esi,4),%edx
445735:	c7 44 24 24 01 00 00 	movl   $0x1,0x24(%esp)
44573c:	00
44573d:	33 c9                	xor    %ecx,%ecx
44573f:	8b 74 24 24          	mov    0x24(%esp),%esi
445743:	8b 04 3a             	mov    (%edx,%edi,1),%eax
445746:	0f b7 40 08          	movzwl 0x8(%eax),%eax
44574a:	66 83 f8 47          	cmp    $0x47,%ax
44574e:	75 06                	jne    0x445756
445750:	41                   	inc    %ecx
445751:	e9 d8 00 00 00       	jmp    0x44582e
445756:	66 83 f8 48          	cmp    $0x48,%ax
44575a:	0f 85 c0 00 00 00    	jne    0x445820
445760:	49                   	dec    %ecx
445761:	0f 89 c7 00 00 00    	jns    0x44582e