472fad:	0f 8e 9c 9c f9 ff    	jle    0x40cc4f
472fb3:	56                   	push   %esi
472fb4:	68 8c 35 4b 00       	push   $0x4b358c
472fb9:	8b 45 10             	mov    0x10(%ebp),%eax
472fbc:	8b cf                	mov    %edi,%ecx
472fbe:	ff 30                	push   (%eax)
472fc0:	ff 75 0c             	push   0xc(%ebp)
472fc3:	e8 ed f5 fc ff       	call   0x4425b5
472fc8:	33 db                	xor    %ebx,%ebx
472fca:	e9 80 9c f9 ff       	jmp    0x40cc4f
472fcf:	8b 45 08             	mov    0x8(%ebp),%eax
472fd2:	8d 4d 08             	lea    0x8(%ebp),%ecx
472fd5:	51                   	push   %ecx
472fd6:	8d 4d 0c             	lea    0xc(%ebp),%ecx
472fd9:	51                   	push   %ecx
472fda:	ff 30                	push   (%eax)
472fdc:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472fdf:	e8 b2 93 fd ff       	call   0x44c396
472fe4:	85 c0                	test   %eax,%eax
472fe6:	74 0d                	je     0x472ff5
472fe8:	8d 4d e8             	lea    -0x18(%ebp),%ecx
472feb:	e8 62 12 f9 ff       	call   0x404252
472ff0:	e9 11 0a f9 ff       	jmp    0x403a06
472ff5:	ff 75 0c             	push   0xc(%ebp)
472ff8:	e8 a0 ec fa ff       	call   0x421c9d
472ffd:	59                   	pop    %ecx
472ffe:	8d 4d e8             	lea    -0x18(%ebp),%ecx
473001:	e8 4c 12 f9 ff       	call   0x404252
473006:	e9 fd 09 f9 ff       	jmp    0x403a08
47300b:	e8 20 1f f9 ff       	call   0x404f30
473010:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473015:	8b 4d fc             	mov    -0x4(%ebp),%ecx
473018:	8b 04 07             	mov    (%edi,%eax,1),%eax
47301b:	8b f1                	mov    %ecx,%esi
47301d:	8b 00                	mov    (%eax),%eax
47301f:	3b 48 08             	cmp    0x8(%eax),%ecx
473022:	0f 83 4d 1d f9 ff    	jae    0x404d75
473028:	8b 40 04             	mov    0x4(%eax),%eax
47302b:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47302e:	ff 34 b0             	push   (%eax,%esi,4)
473031:	e8 bb 6a fd ff       	call   0x449af1
473036:	8d 45 e8             	lea    -0x18(%ebp),%eax
473039:	50                   	push   %eax
47303a:	8d 4d d8             	lea    -0x28(%ebp),%ecx
47303d:	e8 43 8a f9 ff       	call   0x40ba85
473042:	66 83 7d f0 7f       	cmpw   $0x7f,-0x10(%ebp)
473047:	74 1d                	je     0x473066
473049:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47304c:	e8 a4 a8 fa ff       	call   0x41d8f5
473051:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473056:	46                   	inc    %esi
473057:	8b 04 07             	mov    (%edi,%eax,1),%eax
47305a:	8b 00                	mov    (%eax),%eax
47305c:	3b 70 08             	cmp    0x8(%eax),%esi
47305f:	72 c7                	jb     0x473028
473061:	e9 0f 1d f9 ff       	jmp    0x404d75
473066:	8d 46 01             	lea    0x1(%esi),%eax
473069:	89 45 fc             	mov    %eax,-0x4(%ebp)
47306c:	a1 54 21 4c 00       	mov    0x4c2154,%eax
473071:	8b 04 07             	mov    (%edi,%eax,1),%eax
473074:	8b 00                	mov    (%eax),%eax
473076:	8b 40 08             	mov    0x8(%eax),%eax
473079:	48                   	dec    %eax
47307a:	3b f0                	cmp    %eax,%esi
47307c:	75 0a                	jne    0x473088
47307e:	83 c7 04             	add    $0x4,%edi
473081:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
473088:	8d 4d e8             	lea    -0x18(%ebp),%ecx
47308b:	e8 65 a8 fa ff       	call   0x41d8f5
473090:	e9 e0 1c f9 ff       	jmp    0x404d75
473095:	ff 75 14             	push   0x14(%ebp)
473098:	68 20 34 4b 00       	push   $0x4b3420
47309d:	ff 75 18             	push   0x18(%ebp)
4730a0:	ff 75 10             	push   0x10(%ebp)
4730a3:	e8 0d f5 fc ff       	call   0x4425b5
4730a8:	32 db                	xor    %bl,%bl
4730aa:	e9 46 9a f9 ff       	jmp    0x40caf5
4730af:	ff 75 14             	push   0x14(%ebp)
4730b2:	8b ce                	mov    %esi,%ecx
4730b4:	68 a8 34 4b 00       	push   $0x4b34a8
4730b9:	ff 75 18             	push   0x18(%ebp)
4730bc:	ff 75 10             	push   0x10(%ebp)
4730bf:	e8 f1 f4 fc ff       	call   0x4425b5
4730c4:	e9 20 9a f9 ff       	jmp    0x40cae9
4730c9:	81 7c 24 64 45 41 30 	cmpl   $0x36304145,0x64(%esp)
4730d0:	36
4730d1:	0f 85 43 98 f9 ff    	jne    0x40c91a
4730d7:	8d 8c 24 98 00 00 00 	lea    0x98(%esp),%ecx
4730de:	e8 24 18 f9 ff       	call   0x404907
4730e3:	8b 45 08             	mov    0x8(%ebp),%eax
4730e6:	6a 02                	push   $0x2
4730e8:	ff 30                	push   (%eax)
4730ea:	8d 4c 24 58          	lea    0x58(%esp),%ecx
4730ee:	89 9c 24 cc 00 00 00 	mov    %ebx,0xcc(%esp)
4730f5:	89 9c 24 d0 00 00 00 	mov    %ebx,0xd0(%esp)
4730fc:	89 5c 24 64          	mov    %ebx,0x64(%esp)
473100:	89 5c 24 68          	mov    %ebx,0x68(%esp)
473104:	88 5c 24 6c          	mov    %bl,0x6c(%esp)
473108:	e8 9c 10 f9 ff       	call   0x4041a9
47310d:	85 c0                	test   %eax,%eax
47310f:	75 25                	jne    0x473136
473111:	8d 44 24 34          	lea    0x34(%esp),%eax
473115:	50                   	push   %eax
473116:	8d 44 24 18          	lea    0x18(%esp),%eax
47311a:	50                   	push   %eax
47311b:	68 d8 34 4b 00       	push   $0x4b34d8
473120:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
473124:	e8 6d 92 fd ff       	call   0x44c396
473129:	8d 4c 24 50          	lea    0x50(%esp),%ecx
47312d:	85 c0                	test   %eax,%eax
47312f:	74 21                	je     0x473152
473131:	e8 1c 11 f9 ff       	call   0x404252
473136:	ff 75 14             	push   0x14(%ebp)
473139:	8b 4c 24 20          	mov    0x20(%esp),%ecx
47313d:	68 a8 34 4b 00       	push   $0x4b34a8
473142:	ff 75 18             	push   0x18(%ebp)
473145:	ff 75 10             	push   0x10(%ebp)
473148:	e8 68 f4 fc ff       	call   0x4425b5
47314d:	e9 7f 99 f9 ff       	jmp    0x40cad1
473152:	e8 fb 10 f9 ff       	call   0x404252
473157:	8b 44 24 14          	mov    0x14(%esp),%eax
47315b:	6a 04                	push   $0x4
47315d:	8b 38                	mov    (%eax),%edi
47315f:	5a                   	pop    %edx
473160:	83 c8 ff             	or     $0xffffffff,%eax
473163:	6a 10                	push   $0x10
473165:	89 54 24 1c          	mov    %edx,0x1c(%esp)
473169:	89 7c 24 38          	mov    %edi,0x38(%esp)
47316d:	66 89 44 24 34       	mov    %ax,0x34(%esp)
473172:	c7 44 24 7c b4 dd 49 	movl   $0x49ddb4,0x7c(%esp)
473179:	00
47317a:	89 9c 24 80 00 00 00 	mov    %ebx,0x80(%esp)
473181:	89 9c 24 84 00 00 00 	mov    %ebx,0x84(%esp)
473188:	89 9c 24 88 00 00 00 	mov    %ebx,0x88(%esp)
47318f:	e8 56 c3 fa ff       	call   0x41f4ea
473194:	8b f0                	mov    %eax,%esi
473196:	59                   	pop    %ecx
473197:	89 74 24 3c          	mov    %esi,0x3c(%esp)
47319b:	85 f6                	test   %esi,%esi
47319d:	74 11                	je     0x4731b0
47319f:	c7 06 b4 dd 49 00    	movl   $0x49ddb4,(%esi)
4731a5:	89 5e 04             	mov    %ebx,0x4(%esi)
4731a8:	89 5e 08             	mov    %ebx,0x8(%esi)
4731ab:	89 5e 0c             	mov    %ebx,0xc(%esi)
4731ae:	eb 06                	jmp    0x4731b6
4731b0:	8b f3                	mov    %ebx,%esi
4731b2:	89 74 24 3c          	mov    %esi,0x3c(%esp)
4731b6:	83 c8 ff             	or     $0xffffffff,%eax
4731b9:	6a 05                	push   $0x5
4731bb:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4731bf:	89 74 24 48          	mov    %esi,0x48(%esp)
4731c3:	66 89 44 24 36       	mov    %ax,0x36(%esp)
4731c8:	e8 2f 8a f9 ff       	call   0x40bbfc
4731cd:	8d 44 24 28          	lea    0x28(%esp),%eax
4731d1:	50                   	push   %eax
4731d2:	8b ce                	mov    %esi,%ecx
4731d4:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
4731d8:	e8 a8 88 f9 ff       	call   0x40ba85
4731dd:	33 c0                	xor    %eax,%eax
4731df:	40                   	inc    %eax
4731e0:	3b f8                	cmp    %eax,%edi
4731e2:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
4731e6:	89 5c 24 4c          	mov    %ebx,0x4c(%esp)
4731ea:	89 44 24 40          	mov    %eax,0x40(%esp)
4731ee:	0f 8c da 01 00 00    	jl     0x4733ce
4731f4:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4731f8:	8b 44 24 14          	mov    0x14(%esp),%eax
4731fc:	03 c1                	add    %ecx,%eax
4731fe:	41                   	inc    %ecx
4731ff:	0f b6 00             	movzbl (%eax),%eax
473202:	89 4c 24 18          	mov    %ecx,0x18(%esp)
473206:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
47320a:	50                   	push   %eax
47320b:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47320f:	89 44 24 28          	mov    %eax,0x28(%esp)
473213:	e8 e4 89 f9 ff       	call   0x40bbfc
473218:	8d 4c 24 28          	lea    0x28(%esp),%ecx
47321c:	e8 8a 6a fd ff       	call   0x449cab
473221:	84 c0                	test   %al,%al
473223:	74 18                	je     0x47323d
473225:	8b 54 24 18          	mov    0x18(%esp),%edx
473229:	8b 44 24 14          	mov    0x14(%esp),%eax
47322d:	03 c2                	add    %edx,%eax
47322f:	83 c2 04             	add    $0x4,%edx
473232:	8b 00                	mov    (%eax),%eax
473234:	89 44 24 28          	mov    %eax,0x28(%esp)
473238:	e9 20 01 00 00       	jmp    0x47335d
47323d:	8d 4c 24 28          	lea    0x28(%esp),%ecx
473241:	e8 4f 6a fd ff       	call   0x449c95
473246:	84 c0                	test   %al,%al
473248:	74 1f                	je     0x473269
47324a:	8b 54 24 18          	mov    0x18(%esp),%edx
47324e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
473252:	03 ca                	add    %edx,%ecx
473254:	83 c2 08             	add    $0x8,%edx
473257:	8b 01                	mov    (%ecx),%eax
473259:	89 44 24 28          	mov    %eax,0x28(%esp)
47325d:	8b 41 04             	mov    0x4(%ecx),%eax
473260:	89 44 24 2c          	mov    %eax,0x2c(%esp)
473264:	e9 f4 00 00 00       	jmp    0x47335d
473269:	8d 4c 24 28          	lea    0x28(%esp),%ecx
47326d:	e8 0d 6a fd ff       	call   0x449c7f
473272:	84 c0                	test   %al,%al
473274:	74 18                	je     0x47328e
473276:	8b 54 24 18          	mov    0x18(%esp),%edx
47327a:	8b 44 24 14          	mov    0x14(%esp),%eax
47327e:	03 c2                	add    %edx,%eax
473280:	83 c2 08             	add    $0x8,%edx
473283:	dd 00                	fldl   (%eax)
473285:	dd 5c 24 28          	fstpl  0x28(%esp)
473289:	e9 cf 00 00 00       	jmp    0x47335d
47328e:	8d 4c 24 28          	lea    0x28(%esp),%ecx
473292:	e8 75 a6 fa ff       	call   0x41d90c
473297:	84 c0                	test   %al,%al
473299:	0f 84 c2 00 00 00    	je     0x473361
47329f:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4732a3:	50                   	push   %eax
4732a4:	ff 74 24 18          	push   0x18(%esp)
4732a8:	e8 a4 f2 fc ff       	call   0x442551
4732ad:	8b 4c 24 24          	mov    0x24(%esp),%ecx
4732b1:	89 44 24 18          	mov    %eax,0x18(%esp)
4732b5:	50                   	push   %eax
4732b6:	83 f9 31             	cmp    $0x31,%ecx
4732b9:	75 2d                	jne    0x4732e8
4732bb:	8d 8c 24 e4 00 00 00 	lea    0xe4(%esp),%ecx
4732c2:	e8 52 9b f9 ff       	call   0x40ce19
4732c7:	8b 4f 04             	mov    0x4(%edi),%ecx
4732ca:	ff b4 24 e0 00 00 00 	push   0xe0(%esp)
4732d1:	8b 01                	mov    (%ecx),%eax
4732d3:	ff 50 04             	call   *0x4(%eax)
4732d6:	8d 8c 24 e0 00 00 00 	lea    0xe0(%esp),%ecx
4732dd:	8b f0                	mov    %eax,%esi
4732df:	e8 53 98 f9 ff       	call   0x40cb37
4732e4:	6a 01                	push   $0x1
4732e6:	eb 24                	jmp    0x47330c
4732e8:	83 f9 30             	cmp    $0x30,%ecx
4732eb:	75 32                	jne    0x47331f
4732ed:	8d 4c 24 6c          	lea    0x6c(%esp),%ecx
4732f1:	e8 23 9b f9 ff       	call   0x40ce19
4732f6:	8d 44 24 68          	lea    0x68(%esp),%eax
4732fa:	50                   	push   %eax
4732fb:	e8 a5 8f fa ff       	call   0x41c2a5
473300:	8d 4c 24 68          	lea    0x68(%esp),%ecx
473304:	8b f0                	mov    %eax,%esi
473306:	e8 2c 98 f9 ff       	call   0x40cb37
47330b:	53                   	push   %ebx
47330c:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
473310:	e8 e7 88 f9 ff       	call   0x40bbfc
473315:	89 74 24 28          	mov    %esi,0x28(%esp)
473319:	8b 74 24 3c          	mov    0x3c(%esp),%esi
47331d:	eb 30                	jmp    0x47334f
47331f:	83 f9 37             	cmp    $0x37,%ecx
473322:	75 22                	jne    0x473346
473324:	8b cf                	mov    %edi,%ecx
473326:	e8 47 f1 fc ff       	call   0x442472
47332b:	85 c0                	test   %eax,%eax
47332d:	0f 84 ed 00 00 00    	je     0x473420
473333:	ff 74 24 18          	push   0x18(%esp)
473337:	e8 22 c2 fa ff       	call   0x41f55e
47333c:	59                   	pop    %ecx
47333d:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
473341:	e9 b2 fe ff ff       	jmp    0x4731f8
473346:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47334a:	e8 c3 68 fd ff       	call   0x449c12
47334f:	ff 74 24 18          	push   0x18(%esp)
473353:	e8 06 c2 fa ff       	call   0x41f55e
473358:	8b 54 24 20          	mov    0x20(%esp),%edx
47335c:	59                   	pop    %ecx
47335d:	89 54 24 18          	mov    %edx,0x18(%esp)
473361:	8d 44 24 28          	lea    0x28(%esp),%eax
473365:	50                   	push   %eax
473366:	8b ce                	mov    %esi,%ecx
473368:	e8 18 87 f9 ff       	call   0x40ba85
47336d:	8b 4c 24 18          	mov    0x18(%esp),%ecx
473371:	6a 7f                	push   $0x7f
473373:	5a                   	pop    %edx
473374:	39 54 24 24          	cmp    %edx,0x24(%esp)
473378:	0f 85 7a fe ff ff    	jne    0x4731f8
47337e:	8b 4e 08             	mov    0x8(%esi),%ecx
473381:	83 f9 02             	cmp    $0x2,%ecx
473384:	76 2e                	jbe    0x4733b4
473386:	8b 46 04             	mov    0x4(%esi),%eax
473389:	8b 44 88 f8          	mov    -0x8(%eax,%ecx,4),%eax
47338d:	66 39 50 08          	cmp    %dx,0x8(%eax)
473391:	74 21                	je     0x4733b4
473393:	ff 44 24 4c          	incl   0x4c(%esp)
473397:	6a 3b                	push   $0x3b
473399:	58                   	pop    %eax
47339a:	66 89 44 24 24       	mov    %ax,0x24(%esp)
47339f:	83 c8 ff             	or     $0xffffffff,%eax
4733a2:	50                   	push   %eax
4733a3:	8d 44 24 28          	lea    0x28(%esp),%eax
4733a7:	50                   	push   %eax
4733a8:	ff 77 10             	push   0x10(%edi)
4733ab:	8b cf                	mov    %edi,%ecx
4733ad:	e8 d0 92 fa ff       	call   0x41c682
4733b2:	eb 07                	jmp    0x4733bb
4733b4:	8b ce                	mov    %esi,%ecx
4733b6:	e8 d3 f6 fc ff       	call   0x442a8e
4733bb:	8b 44 24 40          	mov    0x40(%esp),%eax
4733bf:	40                   	inc    %eax
4733c0:	89 44 24 40          	mov    %eax,0x40(%esp)
4733c4:	3b 44 24 34          	cmp    0x34(%esp),%eax
4733c8:	0f 8e 26 fe ff ff    	jle    0x4731f4
4733ce:	6a 05                	push   $0x5
4733d0:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4733d4:	e8 23 88 f9 ff       	call   0x40bbfc
4733d9:	8b 44 24 4c          	mov    0x4c(%esp),%eax
4733dd:	8b 4e 04             	mov    0x4(%esi),%ecx
4733e0:	89 44 24 28          	mov    %eax,0x28(%esp)
4733e4:	8b 09                	mov    (%ecx),%ecx
4733e6:	8d 44 24 28          	lea    0x28(%esp),%eax
4733ea:	50                   	push   %eax
4733eb:	e8 82 67 fd ff       	call   0x449b72
4733f0:	8d 44 24 44          	lea    0x44(%esp),%eax
4733f4:	50                   	push   %eax
4733f5:	8d 4f 50             	lea    0x50(%edi),%ecx
4733f8:	e8 eb f5 fe ff       	call   0x4629e8
4733fd:	ff 74 24 14          	push   0x14(%esp)
473401:	e8 97 e8 fa ff       	call   0x421c9d
473406:	b3 01                	mov    $0x1,%bl
473408:	59                   	pop    %ecx
473409:	8d 4c 24 78          	lea    0x78(%esp),%ecx
47340d:	e8 ff 1a f9 ff       	call   0x404f11
473412:	8d 4c 24 28          	lea    0x28(%esp),%ecx
473416:	e8 da a4 fa ff       	call   0x41d8f5
47341b:	e9 b1 96 f9 ff       	jmp    0x40cad1
473420:	8b 44 24 40          	mov    0x40(%esp),%eax
473424:	68 00 dc 49 00       	push   $0x49dc00
473429:	68 00 35 4b 00       	push   $0x4b3500
47342e:	50                   	push   %eax
47342f:	ff 75 08             	push   0x8(%ebp)
473432:	8b cf                	mov    %edi,%ecx
473434:	e8 7c f1 fc ff       	call   0x4425b5
473439:	ff 74 24 18          	push   0x18(%esp)
47343d:	e8 1c c1 fa ff       	call   0x41f55e
473442:	59                   	pop    %ecx
473443:	ff 74 24 14          	push   0x14(%esp)
473447:	e8 51 e8 fa ff       	call   0x421c9d
47344c:	eb ba                	jmp    0x473408
47344e:	33 c9                	xor    %ecx,%ecx
473450:	66 89 4c 46 fe       	mov    %cx,-0x2(%esi,%eax,2)
473455:	c6 44 24 22 01       	movb   $0x1,0x22(%esp)
47345a:	e9 b5 95 f9 ff       	jmp    0x40ca14
47345f:	56                   	push   %esi
473460:	8b cf                	mov    %edi,%ecx
473462:	e8 a4 ef fc ff       	call   0x44240b
473467:	e9 1c 96 f9 ff       	jmp    0x40ca88
47346c:	8b 44 24 18          	mov    0x18(%esp),%eax
473470:	68 38 35 4b 00       	push   $0x4b3538