47a04e:	89 4d 14             	mov    %ecx,0x14(%ebp)
47a051:	3b c8                	cmp    %eax,%ecx
47a053:	72 a0                	jb     0x479ff5
47a055:	8b 7d e8             	mov    -0x18(%ebp),%edi
47a058:	f6 45 08 0c          	testb  $0xc,0x8(%ebp)
47a05c:	89 45 dc             	mov    %eax,-0x24(%ebp)
47a05f:	8b 45 10             	mov    0x10(%ebp),%eax
47a062:	89 45 d4             	mov    %eax,-0x2c(%ebp)
47a065:	74 0d                	je     0x47a074
47a067:	8d 45 d0             	lea    -0x30(%ebp),%eax
47a06a:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
47a071:	89 45 d8             	mov    %eax,-0x28(%ebp)
47a074:	8d 45 bc             	lea    -0x44(%ebp),%eax
47a077:	50                   	push   %eax
47a078:	ff 15 7c f4 48 00    	call   *0x48f47c
47a07e:	6a 20                	push   $0x20
47a080:	8d 45 9c             	lea    -0x64(%ebp),%eax
47a083:	53                   	push   %ebx
47a084:	50                   	push   %eax
47a085:	e8 96 8f fa ff       	call   0x423020
47a08a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
47a08d:	8d 55 e4             	lea    -0x1c(%ebp),%edx
47a090:	83 c4 0c             	add    $0xc,%esp
47a093:	be 00 08 00 00       	mov    $0x800,%esi
47a098:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
47a09c:	8b 01                	mov    (%ecx),%eax
47a09e:	52                   	push   %edx
47a09f:	8d 55 9c             	lea    -0x64(%ebp),%edx
47a0a2:	52                   	push   %edx
47a0a3:	74 03                	je     0x47a0a8
47a0a5:	53                   	push   %ebx
47a0a6:	eb 04                	jmp    0x47a0ac
47a0a8:	8d 55 bc             	lea    -0x44(%ebp),%edx
47a0ab:	52                   	push   %edx
47a0ac:	8d 55 d4             	lea    -0x2c(%ebp),%edx
47a0af:	52                   	push   %edx
47a0b0:	ff 75 08             	push   0x8(%ebp)
47a0b3:	56                   	push   %esi
47a0b4:	68 2c 2c 49 00       	push   $0x492c2c
47a0b9:	ff 75 f0             	push   -0x10(%ebp)
47a0bc:	51                   	push   %ecx
47a0bd:	ff 50 18             	call   *0x18(%eax)
47a0c0:	3d 03 00 02 80       	cmp    $0x80020003,%eax
47a0c5:	75 3c                	jne    0x47a103
47a0c7:	83 7d e0 01          	cmpl   $0x1,-0x20(%ebp)
47a0cb:	75 4d                	jne    0x47a11a
47a0cd:	8b 55 ec             	mov    -0x14(%ebp),%edx
47a0d0:	8d 7d e4             	lea    -0x1c(%ebp),%edi
47a0d3:	6a 04                	push   $0x4
47a0d5:	59                   	pop    %ecx
47a0d6:	57                   	push   %edi
47a0d7:	33 c0                	xor    %eax,%eax
47a0d9:	8d 7d 9c             	lea    -0x64(%ebp),%edi
47a0dc:	66 39 4d 08          	cmp    %cx,0x8(%ebp)
47a0e0:	8b 0a                	mov    (%edx),%ecx
47a0e2:	57                   	push   %edi
47a0e3:	53                   	push   %ebx
47a0e4:	0f 94 c0             	sete   %al
47a0e7:	8d 7d d4             	lea    -0x2c(%ebp),%edi
47a0ea:	57                   	push   %edi
47a0eb:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
47a0f2:	50                   	push   %eax
47a0f3:	56                   	push   %esi
47a0f4:	68 2c 2c 49 00       	push   $0x492c2c
47a0f9:	ff 75 f0             	push   -0x10(%ebp)
47a0fc:	52                   	push   %edx
47a0fd:	ff 51 18             	call   *0x18(%ecx)
47a100:	8b 7d e8             	mov    -0x18(%ebp),%edi
47a103:	85 c0                	test   %eax,%eax
47a105:	79 26                	jns    0x47a12d
47a107:	b9 09 00 02 80       	mov    $0x80020009,%ecx
47a10c:	3b c1                	cmp    %ecx,%eax
47a10e:	75 0a                	jne    0x47a11a
47a110:	6a 01                	push   $0x1
47a112:	53                   	push   %ebx
47a113:	8d 45 9c             	lea    -0x64(%ebp),%eax
47a116:	50                   	push   %eax
47a117:	51                   	push   %ecx
47a118:	eb 05                	jmp    0x47a11f
47a11a:	6a 01                	push   $0x1
47a11c:	53                   	push   %ebx
47a11d:	53                   	push   %ebx
47a11e:	50                   	push   %eax
47a11f:	8b cf                	mov    %edi,%ecx
47a121:	e8 b5 f5 ff ff       	call   0x4796db
47a126:	8b d8                	mov    %eax,%ebx
47a128:	e9 8f 00 00 00       	jmp    0x47a1bc
47a12d:	8b 07                	mov    (%edi),%eax
47a12f:	53                   	push   %ebx
47a130:	53                   	push   %ebx
47a131:	8b 48 04             	mov    0x4(%eax),%ecx
47a134:	03 cf                	add    %edi,%ecx
47a136:	e8 68 c9 fd ff       	call   0x456aa3
47a13b:	8d 45 bc             	lea    -0x44(%ebp),%eax
47a13e:	50                   	push   %eax
47a13f:	8b 45 0c             	mov    0xc(%ebp),%eax
47a142:	8b 08                	mov    (%eax),%ecx
47a144:	e8 bb d6 fe ff       	call   0x467804
47a149:	8b 45 f4             	mov    -0xc(%ebp),%eax
47a14c:	8b f3                	mov    %ebx,%esi
47a14e:	85 c0                	test   %eax,%eax
47a150:	74 6a                	je     0x47a1bc
47a152:	8b 4d 10             	mov    0x10(%ebp),%ecx
47a155:	c1 e0 04             	shl    $0x4,%eax
47a158:	8d 79 f0             	lea    -0x10(%ecx),%edi
47a15b:	03 f8                	add    %eax,%edi
47a15d:	8b 45 18             	mov    0x18(%ebp),%eax
47a160:	8b 40 04             	mov    0x4(%eax),%eax
47a163:	8b 04 b0             	mov    (%eax,%esi,4),%eax
47a166:	83 78 0c 06          	cmpl   $0x6,0xc(%eax)
47a16a:	75 47                	jne    0x47a1b3
47a16c:	83 bd 0c ff ff ff 00 	cmpl   $0x0,-0xf4(%ebp)
47a173:	74 2c                	je     0x47a1a1
47a175:	0f b7 8c b5 1c ff ff 	movzwl -0xe4(%ebp,%esi,4),%ecx
47a17c:	ff
47a17d:	ba 24 40 00 00       	mov    $0x4024,%edx
47a182:	66 3b ca             	cmp    %dx,%cx
47a185:	74 2c                	je     0x47a1b3
47a187:	f6 84 b5 1e ff ff ff 	testb  $0x2,-0xe2(%ebp,%esi,4)
47a18e:	02
47a18f:	75 10                	jne    0x47a1a1
47a191:	f7 c1 00 40 00 00    	test   $0x4000,%ecx
47a197:	75 08                	jne    0x47a1a1
47a199:	6a 08                	push   $0x8
47a19b:	59                   	pop    %ecx
47a19c:	66 39 0f             	cmp    %cx,(%edi)
47a19f:	75 12                	jne    0x47a1b3
47a1a1:	83 78 0c 06          	cmpl   $0x6,0xc(%eax)
47a1a5:	75 04                	jne    0x47a1ab
47a1a7:	8b 08                	mov    (%eax),%ecx
47a1a9:	eb 02                	jmp    0x47a1ad
47a1ab:	8b cb                	mov    %ebx,%ecx
47a1ad:	57                   	push   %edi
47a1ae:	e8 51 d6 fe ff       	call   0x467804
47a1b3:	46                   	inc    %esi
47a1b4:	83 ef 10             	sub    $0x10,%edi
47a1b7:	3b 75 f4             	cmp    -0xc(%ebp),%esi
47a1ba:	72 a1                	jb     0x47a15d
47a1bc:	8d 45 bc             	lea    -0x44(%ebp),%eax
47a1bf:	50                   	push   %eax
47a1c0:	ff 15 5c f4 48 00    	call   *0x48f45c
47a1c6:	8b 45 10             	mov    0x10(%ebp),%eax
47a1c9:	85 c0                	test   %eax,%eax
47a1cb:	74 08                	je     0x47a1d5
47a1cd:	51                   	push   %ecx
47a1ce:	8b c8                	mov    %eax,%ecx
47a1d0:	e8 be 3d fe ff       	call   0x45df93
47a1d5:	8b c3                	mov    %ebx,%eax
47a1d7:	eb 10                	jmp    0x47a1e9
47a1d9:	33 c0                	xor    %eax,%eax
47a1db:	40                   	inc    %eax
47a1dc:	50                   	push   %eax
47a1dd:	68 88 aa 4b 00       	push   $0x4baa88
47a1e2:	53                   	push   %ebx
47a1e3:	50                   	push   %eax
47a1e4:	e8 f2 f4 ff ff       	call   0x4796db
47a1e9:	5f                   	pop    %edi
47a1ea:	5e                   	pop    %esi
47a1eb:	5b                   	pop    %ebx
47a1ec:	8b e5                	mov    %ebp,%esp
47a1ee:	5d                   	pop    %ebp
47a1ef:	c2 14 00             	ret    $0x14
47a1f2:	55                   	push   %ebp
47a1f3:	8b ec                	mov    %esp,%ebp
47a1f5:	83 ec 1c             	sub    $0x1c,%esp
47a1f8:	56                   	push   %esi
47a1f9:	8b 75 18             	mov    0x18(%ebp),%esi
47a1fc:	57                   	push   %edi
47a1fd:	8b f9                	mov    %ecx,%edi
47a1ff:	83 3e 00             	cmpl   $0x0,(%esi)
47a202:	74 51                	je     0x47a255
47a204:	83 ec 10             	sub    $0x10,%esp
47a207:	8b cc                	mov    %esp,%ecx
47a209:	68 10 f9 48 00       	push   $0x48f910
47a20e:	e8 2e dd f8 ff       	call   0x407f41
47a213:	6a 00                	push   $0x0
47a215:	6a 2a                	push   $0x2a
47a217:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
47a21a:	e8 9e c9 fe ff       	call   0x466bbd
47a21f:	8b 0e                	mov    (%esi),%ecx
47a221:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47a224:	50                   	push   %eax
47a225:	e8 a5 d5 fe ff       	call   0x4677cf
47a22a:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
47a22e:	8b cf                	mov    %edi,%ecx
47a230:	ff 75 14             	push   0x14(%ebp)
47a233:	ff 75 10             	push   0x10(%ebp)
47a236:	ff 75 0c             	push   0xc(%ebp)
47a239:	56                   	push   %esi
47a23a:	74 04                	je     0x47a240
47a23c:	6a 01                	push   $0x1
47a23e:	eb 02                	jmp    0x47a242
47a240:	6a 03                	push   $0x3
47a242:	e8 05 fb ff ff       	call   0x479d4c
47a247:	8d 4d ec             	lea    -0x14(%ebp),%ecx
47a24a:	8b f0                	mov    %eax,%esi
47a24c:	e8 13 b8 f8 ff       	call   0x405a64
47a251:	8b c6                	mov    %esi,%eax
47a253:	eb 03                	jmp    0x47a258
47a255:	83 c8 ff             	or     $0xffffffff,%eax
47a258:	5f                   	pop    %edi
47a259:	5e                   	pop    %esi
47a25a:	8b e5                	mov    %ebp,%esp
47a25c:	5d                   	pop    %ebp
47a25d:	c2 14 00             	ret    $0x14
47a260:	55                   	push   %ebp
47a261:	8b ec                	mov    %esp,%ebp
47a263:	83 ec 20             	sub    $0x20,%esp
47a266:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
47a26a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47a26d:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
47a271:	8b 55 10             	mov    0x10(%ebp),%edx
47a274:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
47a27b:	89 45 f8             	mov    %eax,-0x8(%ebp)
47a27e:	56                   	push   %esi
47a27f:	8b f1                	mov    %ecx,%esi
47a281:	85 d2                	test   %edx,%edx
47a283:	74 26                	je     0x47a2ab
47a285:	8b 42 08             	mov    0x8(%edx),%eax
47a288:	85 c0                	test   %eax,%eax
47a28a:	74 1f                	je     0x47a2ab
47a28c:	8b 4a 04             	mov    0x4(%edx),%ecx
47a28f:	8b 4c 81 fc          	mov    -0x4(%ecx,%eax,4),%ecx
47a293:	e8 45 f1 f8 ff       	call   0x4093dd
47a298:	84 c0                	test   %al,%al
47a29a:	74 0f                	je     0x47a2ab
47a29c:	52                   	push   %edx
47a29d:	ff 75 0c             	push   0xc(%ebp)
47a2a0:	8d 45 f8             	lea    -0x8(%ebp),%eax
47a2a3:	ff 75 08             	push   0x8(%ebp)
47a2a6:	50                   	push   %eax
47a2a7:	6a 08                	push   $0x8
47a2a9:	eb 0d                	jmp    0x47a2b8
47a2ab:	52                   	push   %edx
47a2ac:	ff 75 0c             	push   0xc(%ebp)
47a2af:	8d 45 f8             	lea    -0x8(%ebp),%eax
47a2b2:	ff 75 08             	push   0x8(%ebp)
47a2b5:	50                   	push   %eax
47a2b6:	6a 04                	push   $0x4
47a2b8:	8b ce                	mov    %esi,%ecx
47a2ba:	e8 8d fa ff ff       	call   0x479d4c
47a2bf:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
47a2c2:	8b f0                	mov    %eax,%esi
47a2c4:	e8 57 f7 f8 ff       	call   0x409a20
47a2c9:	8b c6                	mov    %esi,%eax
47a2cb:	5e                   	pop    %esi
47a2cc:	8b e5                	mov    %ebp,%esp
47a2ce:	5d                   	pop    %ebp
47a2cf:	c2 0c 00             	ret    $0xc
47a2d2:	55                   	push   %ebp
47a2d3:	8b ec                	mov    %esp,%ebp
47a2d5:	83 ec 38             	sub    $0x38,%esp
47a2d8:	8b 55 08             	mov    0x8(%ebp),%edx
47a2db:	33 c0                	xor    %eax,%eax
47a2dd:	53                   	push   %ebx
47a2de:	56                   	push   %esi
47a2df:	8b 75 0c             	mov    0xc(%ebp),%esi
47a2e2:	8b d9                	mov    %ecx,%ebx
47a2e4:	8b 52 04             	mov    0x4(%edx),%edx
47a2e7:	33 c9                	xor    %ecx,%ecx
47a2e9:	89 4d e0             	mov    %ecx,-0x20(%ebp)
47a2ec:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
47a2ef:	89 4d e8             	mov    %ecx,-0x18(%ebp)
47a2f2:	89 4d cc             	mov    %ecx,-0x34(%ebp)
47a2f5:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
47a2f8:	8b 0e                	mov    (%esi),%ecx
47a2fa:	c7 45 dc 78 fb 48 00 	movl   $0x48fb78,-0x24(%ebp)
47a301:	c7 45 d8 01 00 00 00 	movl   $0x1,-0x28(%ebp)
47a308:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
47a30c:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
47a30f:	57                   	push   %edi
47a310:	83 cf ff             	or     $0xffffffff,%edi
47a313:	41                   	inc    %ecx
47a314:	89 0e                	mov    %ecx,(%esi)
47a316:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47a31a:	89 45 f8             	mov    %eax,-0x8(%ebp)
47a31d:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
47a320:	6a 47                	push   $0x47
47a322:	5e                   	pop    %esi
47a323:	66 89 7d f4          	mov    %di,-0xc(%ebp)
47a327:	66 39 70 08          	cmp    %si,0x8(%eax)
47a32b:	8b 75 0c             	mov    0xc(%ebp),%esi
47a32e:	74 10                	je     0x47a340
47a330:	8b 44 8a fc          	mov    -0x4(%edx,%ecx,4),%eax
47a334:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47a338:	50                   	push   %eax
47a339:	6a 6f                	push   $0x6f
47a33b:	e9 0d 01 00 00       	jmp    0x47a44d
47a340:	8d 41 01             	lea    0x1(%ecx),%eax
47a343:	33 ff                	xor    %edi,%edi
47a345:	89 06                	mov    %eax,(%esi)
47a347:	8b 55 08             	mov    0x8(%ebp),%edx
47a34a:	8b 0e                	mov    (%esi),%ecx
47a34c:	8b 42 04             	mov    0x4(%edx),%eax
47a34f:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
47a352:	0f bf 41 08          	movswl 0x8(%ecx),%eax
47a356:	83 e8 47             	sub    $0x47,%eax
47a359:	74 2e                	je     0x47a389
47a35b:	48                   	dec    %eax
47a35c:	74 24                	je     0x47a382
47a35e:	83 e8 37             	sub    $0x37,%eax
47a361:	75 27                	jne    0x47a38a
47a363:	8b 0e                	mov    (%esi),%ecx
47a365:	8b 42 04             	mov    0x4(%edx),%eax
47a368:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
47a36c:	8b cb                	mov    %ebx,%ecx
47a36e:	0f bf 40 0a          	movswl 0xa(%eax),%eax
47a372:	50                   	push   %eax
47a373:	6a 6f                	push   $0x6f
47a375:	e8 3b fd fe ff       	call   0x46a0b5
47a37a:	83 cf ff             	or     $0xffffffff,%edi
47a37d:	e9 9e 00 00 00       	jmp    0x47a420
47a382:	85 ff                	test   %edi,%edi
47a384:	74 11                	je     0x47a397
47a386:	4f                   	dec    %edi
47a387:	eb 01                	jmp    0x47a38a
47a389:	47                   	inc    %edi
47a38a:	51                   	push   %ecx
47a38b:	8d 4d dc             	lea    -0x24(%ebp),%ecx
47a38e:	e8 dc d2 f8 ff       	call   0x40766f
47a393:	ff 06                	incl   (%esi)
47a395:	eb b0                	jmp    0x47a347
47a397:	8b 45 f8             	mov    -0x8(%ebp),%eax
47a39a:	8d 4d dc             	lea    -0x24(%ebp),%ecx
47a39d:	ff 06                	incl   (%esi)
47a39f:	6a 7f                	push   $0x7f
47a3a1:	5f                   	pop    %edi
47a3a2:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
47a3a6:	8d 45 ec             	lea    -0x14(%ebp),%eax
47a3a9:	50                   	push   %eax
47a3aa:	66 89 7d f4          	mov    %di,-0xc(%ebp)
47a3ae:	e8 bc d2 f8 ff       	call   0x40766f
47a3b3:	8b 45 e0             	mov    -0x20(%ebp),%eax
47a3b6:	33 f6                	xor    %esi,%esi
47a3b8:	89 75 0c             	mov    %esi,0xc(%ebp)
47a3bb:	8b 00                	mov    (%eax),%eax
47a3bd:	66 39 78 08          	cmp    %di,0x8(%eax)
47a3c1:	74 5b                	je     0x47a41e
47a3c3:	83 cf ff             	or     $0xffffffff,%edi
47a3c6:	57                   	push   %edi
47a3c7:	6a 01                	push   $0x1
47a3c9:	56                   	push   %esi
47a3ca:	56                   	push   %esi
47a3cb:	8d 45 cc             	lea    -0x34(%ebp),%eax
47a3ce:	8b cb                	mov    %ebx,%ecx
47a3d0:	50                   	push   %eax
47a3d1:	8d 45 0c             	lea    0xc(%ebp),%eax
47a3d4:	50                   	push   %eax
47a3d5:	8d 45 dc             	lea    -0x24(%ebp),%eax
47a3d8:	50                   	push   %eax