47b214:	8b c6                	mov    %esi,%eax
47b216:	e8 a5 da fa ff       	call   0x428cc0
47b21b:	50                   	push   %eax
47b21c:	e8 17 c7 f8 ff       	call   0x407938
47b221:	33 c0                	xor    %eax,%eax
47b223:	5a                   	pop    %edx
47b224:	59                   	pop    %ecx
47b225:	59                   	pop    %ecx
47b226:	64 89 10             	mov    %edx,%fs:(%eax)
47b229:	68 3e b2 47 00       	push   $0x47b23e
47b22e:	8d 45 f8             	lea    -0x8(%ebp),%eax
47b231:	e8 32 96 f8 ff       	call   0x404868
47b236:	c3                   	ret
47b237:	e9 d0 8f f8 ff       	jmp    0x40420c
47b23c:	eb f0                	jmp    0x47b22e
47b23e:	5f                   	pop    %edi
47b23f:	5e                   	pop    %esi
47b240:	5b                   	pop    %ebx
47b241:	8b e5                	mov    %ebp,%esp
47b243:	5d                   	pop    %ebp
47b244:	c2 0c 00             	ret    $0xc
47b247:	90                   	nop
47b248:	53                   	push   %ebx
47b249:	56                   	push   %esi
47b24a:	57                   	push   %edi
47b24b:	83 c4 f0             	add    $0xfffffff0,%esp
47b24e:	8b f9                	mov    %ecx,%edi
47b250:	8b f2                	mov    %edx,%esi
47b252:	8b d8                	mov    %eax,%ebx
47b254:	8b 43 1c             	mov    0x1c(%ebx),%eax
47b257:	80 78 3e 00          	cmpb   $0x0,0x3e(%eax)
47b25b:	74 4e                	je     0x47b2ab
47b25d:	8b d4                	mov    %esp,%edx
47b25f:	8b c3                	mov    %ebx,%eax
47b261:	8b 08                	mov    (%eax),%ecx
47b263:	ff 51 58             	call   *0x58(%ecx)
47b266:	8b 43 08             	mov    0x8(%ebx),%eax
47b269:	f7 d8                	neg    %eax
47b26b:	50                   	push   %eax
47b26c:	8b 43 04             	mov    0x4(%ebx),%eax
47b26f:	f7 d8                	neg    %eax
47b271:	50                   	push   %eax
47b272:	8d 44 24 08          	lea    0x8(%esp),%eax
47b276:	50                   	push   %eax
47b277:	e8 fc c9 f8 ff       	call   0x407c78
47b27c:	6a fe                	push   $0xfffffffe
47b27e:	6a fe                	push   $0xfffffffe
47b280:	8d 44 24 08          	lea    0x8(%esp),%eax
47b284:	50                   	push   %eax
47b285:	e8 fe c8 f8 ff       	call   0x407b88
47b28a:	ff 76 04             	push   0x4(%esi)
47b28d:	ff 36                	push   (%esi)
47b28f:	8d 44 24 08          	lea    0x8(%esp),%eax
47b293:	50                   	push   %eax
47b294:	e8 07 ca f8 ff       	call   0x407ca0
47b299:	85 c0                	test   %eax,%eax
47b29b:	74 0e                	je     0x47b2ab
47b29d:	68 01 7f 00 00       	push   $0x7f01
47b2a2:	6a 00                	push   $0x0
47b2a4:	e8 6f c9 f8 ff       	call   0x407c18
47b2a9:	89 07                	mov    %eax,(%edi)
47b2ab:	83 c4 10             	add    $0x10,%esp
47b2ae:	5f                   	pop    %edi
47b2af:	5e                   	pop    %esi
47b2b0:	5b                   	pop    %ebx
47b2b1:	c3                   	ret
47b2b2:	8b c0                	mov    %eax,%eax
47b2b4:	53                   	push   %ebx
47b2b5:	56                   	push   %esi
47b2b6:	57                   	push   %edi
47b2b7:	8b f8                	mov    %eax,%edi
47b2b9:	33 db                	xor    %ebx,%ebx
47b2bb:	ff 72 04             	push   0x4(%edx)
47b2be:	ff 32                	push   (%edx)
47b2c0:	e8 c3 cb f8 ff       	call   0x407e88
47b2c5:	8b f0                	mov    %eax,%esi
47b2c7:	85 f6                	test   %esi,%esi
47b2c9:	74 15                	je     0x47b2e0
47b2cb:	3b fe                	cmp    %esi,%edi
47b2cd:	75 04                	jne    0x47b2d3
47b2cf:	b3 01                	mov    $0x1,%bl
47b2d1:	eb 0d                	jmp    0x47b2e0
47b2d3:	56                   	push   %esi
47b2d4:	57                   	push   %edi
47b2d5:	e8 e6 c8 f8 ff       	call   0x407bc0
47b2da:	85 c0                	test   %eax,%eax
47b2dc:	74 02                	je     0x47b2e0
47b2de:	b3 01                	mov    $0x1,%bl
47b2e0:	8b c3                	mov    %ebx,%eax
47b2e2:	5f                   	pop    %edi
47b2e3:	5e                   	pop    %esi
47b2e4:	5b                   	pop    %ebx
47b2e5:	c3                   	ret
47b2e6:	8b c0                	mov    %eax,%eax
47b2e8:	55                   	push   %ebp
47b2e9:	8b ec                	mov    %esp,%ebp
47b2eb:	56                   	push   %esi
47b2ec:	8b 45 08             	mov    0x8(%ebp),%eax
47b2ef:	8b 40 08             	mov    0x8(%eax),%eax
47b2f2:	8b 40 fc             	mov    -0x4(%eax),%eax
47b2f5:	f6 40 34 01          	testb  $0x1,0x34(%eax)
47b2f9:	74 2b                	je     0x47b326
47b2fb:	8b 45 08             	mov    0x8(%ebp),%eax
47b2fe:	8b 40 08             	mov    0x8(%eax),%eax
47b301:	8b 40 fc             	mov    -0x4(%eax),%eax
47b304:	8b 40 30             	mov    0x30(%eax),%eax
47b307:	66 be b5 ff          	mov    $0xffb5,%si
47b30b:	e8 64 89 f8 ff       	call   0x403c74
47b310:	84 c0                	test   %al,%al
47b312:	74 12                	je     0x47b326
47b314:	8b 45 08             	mov    0x8(%ebp),%eax
47b317:	8b 40 08             	mov    0x8(%eax),%eax
47b31a:	8b 40 fc             	mov    -0x4(%eax),%eax
47b31d:	8b 40 1c             	mov    0x1c(%eax),%eax
47b320:	80 78 3e 00          	cmpb   $0x0,0x3e(%eax)
47b324:	75 05                	jne    0x47b32b
47b326:	33 c0                	xor    %eax,%eax
47b328:	5e                   	pop    %esi
47b329:	5d                   	pop    %ebp
47b32a:	c3                   	ret
47b32b:	b0 01                	mov    $0x1,%al
47b32d:	5e                   	pop    %esi
47b32e:	5d                   	pop    %ebp
47b32f:	c3                   	ret
47b330:	55                   	push   %ebp
47b331:	8b ec                	mov    %esp,%ebp
47b333:	83 c4 e0             	add    $0xffffffe0,%esp
47b336:	53                   	push   %ebx
47b337:	56                   	push   %esi
47b338:	57                   	push   %edi
47b339:	8d 7d e3             	lea    -0x1d(%ebp),%edi
47b33c:	33 d2                	xor    %edx,%edx
47b33e:	55                   	push   %ebp
47b33f:	68 72 b5 47 00       	push   $0x47b572
47b344:	64 ff 32             	push   %fs:(%edx)
47b347:	64 89 22             	mov    %esp,%fs:(%edx)
47b34a:	b3 01                	mov    $0x1,%bl
47b34c:	e9 e6 01 00 00       	jmp    0x47b537
47b351:	84 db                	test   %bl,%bl
47b353:	75 05                	jne    0x47b35a
47b355:	e8 1e cb f8 ff       	call   0x407e78
47b35a:	33 db                	xor    %ebx,%ebx
47b35c:	e9 b5 01 00 00       	jmp    0x47b516
47b361:	8b 47 04             	mov    0x4(%edi),%eax
47b364:	3d 05 01 00 00       	cmp    $0x105,%eax
47b369:	7f 25                	jg     0x47b390
47b36b:	0f 84 ad 00 00 00    	je     0x47b41e
47b371:	2d a0 00 00 00       	sub    $0xa0,%eax
47b376:	0f 84 e5 00 00 00    	je     0x47b461
47b37c:	48                   	dec    %eax
47b37d:	83 e8 09             	sub    $0x9,%eax
47b380:	0f 82 bb 00 00 00    	jb     0x47b441
47b386:	83 e8 5a             	sub    $0x5a,%eax
47b389:	74 1f                	je     0x47b3aa
47b38b:	e9 4d 01 00 00       	jmp    0x47b4dd
47b390:	2d 00 02 00 00       	sub    $0x200,%eax
47b395:	0f 84 c6 00 00 00    	je     0x47b461
47b39b:	48                   	dec    %eax
47b39c:	83 e8 09             	sub    $0x9,%eax
47b39f:	0f 82 9c 00 00 00    	jb     0x47b441
47b3a5:	e9 33 01 00 00       	jmp    0x47b4dd
47b3aa:	8b 47 08             	mov    0x8(%edi),%eax
47b3ad:	83 f8 12             	cmp    $0x12,%eax
47b3b0:	0f 84 27 01 00 00    	je     0x47b4dd
47b3b6:	83 f8 10             	cmp    $0x10,%eax
47b3b9:	0f 84 1e 01 00 00    	je     0x47b4dd
47b3bf:	83 f8 19             	cmp    $0x19,%eax
47b3c2:	0f 84 15 01 00 00    	je     0x47b4dd
47b3c8:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
47b3cc:	f6 47 0e ff          	testb  $0xff,0xe(%edi)
47b3d0:	74 29                	je     0x47b3fb
47b3d2:	be 60 00 00 00       	mov    $0x60,%esi
47b3d7:	6a 00                	push   $0x0
47b3d9:	56                   	push   %esi
47b3da:	e8 69 c8 f8 ff       	call   0x407c48
47b3df:	66 8b 57 0e          	mov    0xe(%edi),%dx
47b3e3:	66 81 e2 ff 00       	and    $0xff,%dx
47b3e8:	0f b7 d2             	movzwl %dx,%edx
47b3eb:	3b c2                	cmp    %edx,%eax
47b3ed:	75 06                	jne    0x47b3f5
47b3ef:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
47b3f3:	eb 06                	jmp    0x47b3fb
47b3f5:	46                   	inc    %esi
47b3f6:	83 fe 6a             	cmp    $0x6a,%esi
47b3f9:	75 dc                	jne    0x47b3d7
47b3fb:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
47b3ff:	0f 85 d8 00 00 00    	jne    0x47b4dd
47b405:	8b 45 08             	mov    0x8(%ebp),%eax
47b408:	8b 40 fc             	mov    -0x4(%eax),%eax
47b40b:	8a 15 80 b5 47 00    	mov    0x47b580,%dl
47b411:	88 50 34             	mov    %dl,0x34(%eax)
47b414:	e8 d7 8e f8 ff       	call   0x4042f0
47b419:	e9 5b 01 00 00       	jmp    0x47b579
47b41e:	83 7f 08 12          	cmpl   $0x12,0x8(%edi)
47b422:	0f 85 b5 00 00 00    	jne    0x47b4dd
47b428:	8b 45 08             	mov    0x8(%ebp),%eax
47b42b:	8b 40 fc             	mov    -0x4(%eax),%eax
47b42e:	8a 15 80 b5 47 00    	mov    0x47b580,%dl
47b434:	88 50 34             	mov    %dl,0x34(%eax)
47b437:	e8 b4 8e f8 ff       	call   0x4042f0
47b43c:	e9 38 01 00 00       	jmp    0x47b579
47b441:	8b 45 08             	mov    0x8(%ebp),%eax
47b444:	8b 40 fc             	mov    -0x4(%eax),%eax
47b447:	8b 40 30             	mov    0x30(%eax),%eax
47b44a:	e8 05 3b fd ff       	call   0x44ef54
47b44f:	3b 07                	cmp    (%edi),%eax
47b451:	0f 84 86 00 00 00    	je     0x47b4dd
47b457:	e8 94 8e f8 ff       	call   0x4042f0
47b45c:	e9 18 01 00 00       	jmp    0x47b579
47b461:	e8 62 c5 f8 ff       	call   0x4079c8
47b466:	8b 55 08             	mov    0x8(%ebp),%edx
47b469:	3b 42 f8             	cmp    -0x8(%edx),%eax
47b46c:	75 21                	jne    0x47b48f
47b46e:	8b 45 08             	mov    0x8(%ebp),%eax
47b471:	8b 40 fc             	mov    -0x4(%eax),%eax
47b474:	8b 40 30             	mov    0x30(%eax),%eax
47b477:	e8 d8 3a fd ff       	call   0x44ef54
47b47c:	8d 57 14             	lea    0x14(%edi),%edx
47b47f:	e8 30 fe ff ff       	call   0x47b2b4
47b484:	84 c0                	test   %al,%al
47b486:	74 36                	je     0x47b4be
47b488:	e8 43 c8 f8 ff       	call   0x407cd0
47b48d:	eb 2f                	jmp    0x47b4be
47b48f:	e8 34 c5 f8 ff       	call   0x4079c8
47b494:	85 c0                	test   %eax,%eax
47b496:	75 26                	jne    0x47b4be
47b498:	8b 45 08             	mov    0x8(%ebp),%eax
47b49b:	8b 40 fc             	mov    -0x4(%eax),%eax
47b49e:	8b 40 30             	mov    0x30(%eax),%eax
47b4a1:	e8 ae 3a fd ff       	call   0x44ef54
47b4a6:	8d 57 14             	lea    0x14(%edi),%edx
47b4a9:	e8 06 fe ff ff       	call   0x47b2b4
47b4ae:	84 c0                	test   %al,%al
47b4b0:	75 0c                	jne    0x47b4be
47b4b2:	8b 45 08             	mov    0x8(%ebp),%eax
47b4b5:	8b 40 f8             	mov    -0x8(%eax),%eax
47b4b8:	50                   	push   %eax
47b4b9:	e8 72 c8 f8 ff       	call   0x407d30
47b4be:	e8 05 c5 f8 ff       	call   0x4079c8
47b4c3:	8b 55 08             	mov    0x8(%ebp),%edx
47b4c6:	3b 42 f8             	cmp    -0x8(%edx),%eax
47b4c9:	75 12                	jne    0x47b4dd
47b4cb:	68 00 7f 00 00       	push   $0x7f00
47b4d0:	6a 00                	push   $0x0
47b4d2:	e8 41 c7 f8 ff       	call   0x407c18
47b4d7:	50                   	push   %eax
47b4d8:	e8 73 c8 f8 ff       	call   0x407d50
47b4dd:	6a 03                	push   $0x3
47b4df:	6a 00                	push   $0x0
47b4e1:	6a 00                	push   $0x0
47b4e3:	6a 00                	push   $0x0
47b4e5:	57                   	push   %edi
47b4e6:	e8 9d c7 f8 ff       	call   0x407c88
47b4eb:	85 c0                	test   %eax,%eax
47b4ed:	74 27                	je     0x47b516
47b4ef:	8b 47 04             	mov    0x4(%edi),%eax
47b4f2:	3d 00 02 00 00       	cmp    $0x200,%eax
47b4f7:	72 11                	jb     0x47b50a
47b4f9:	3d 0a 02 00 00       	cmp    $0x20a,%eax
47b4fe:	77 0a                	ja     0x47b50a
47b500:	8b 45 08             	mov    0x8(%ebp),%eax
47b503:	8b 40 f8             	mov    -0x8(%eax),%eax
47b506:	3b 07                	cmp    (%edi),%eax
47b508:	74 0c                	je     0x47b516
47b50a:	57                   	push   %edi
47b50b:	e8 30 c9 f8 ff       	call   0x407e40
47b510:	57                   	push   %edi
47b511:	e8 da c3 f8 ff       	call   0x4078f0
47b516:	55                   	push   %ebp
47b517:	e8 cc fd ff ff       	call   0x47b2e8
47b51c:	59                   	pop    %ecx
47b51d:	84 c0                	test   %al,%al
47b51f:	74 16                	je     0x47b537
47b521:	6a 00                	push   $0x0
47b523:	6a 00                	push   $0x0
47b525:	6a 00                	push   $0x0
47b527:	6a 00                	push   $0x0
47b529:	57                   	push   %edi
47b52a:	e8 59 c7 f8 ff       	call   0x407c88
47b52f:	85 c0                	test   %eax,%eax
47b531:	0f 85 2a fe ff ff    	jne    0x47b361
47b537:	55                   	push   %ebp
47b538:	e8 ab fd ff ff       	call   0x47b2e8
47b53d:	59                   	pop    %ecx
47b53e:	84 c0                	test   %al,%al
47b540:	0f 85 0b fe ff ff    	jne    0x47b351
47b546:	33 c0                	xor    %eax,%eax
47b548:	5a                   	pop    %edx
47b549:	59                   	pop    %ecx
47b54a:	59                   	pop    %ecx
47b54b:	64 89 10             	mov    %edx,%fs:(%eax)
47b54e:	68 79 b5 47 00       	push   $0x47b579
47b553:	ba 03 01 00 00       	mov    $0x103,%edx
47b558:	b8 02 01 00 00       	mov    $0x102,%eax
47b55d:	e8 02 09 ff ff       	call   0x46be64
47b562:	ba 07 01 00 00       	mov    $0x107,%edx
47b567:	b8 06 01 00 00       	mov    $0x106,%eax
47b56c:	e8 f3 08 ff ff       	call   0x46be64
47b571:	c3                   	ret
47b572:	e9 95 8c f8 ff       	jmp    0x40420c
47b577:	eb da                	jmp    0x47b553
47b579:	5f                   	pop    %edi
47b57a:	5e                   	pop    %esi
47b57b:	5b                   	pop    %ebx
47b57c:	8b e5                	mov    %ebp,%esp
47b57e:	5d                   	pop    %ebp
47b57f:	c3                   	ret
47b580:	04 00                	add    $0x0,%al
47b582:	00 00                	add    %al,(%eax)
47b584:	55                   	push   %ebp
47b585:	8b ec                	mov    %esp,%ebp
47b587:	81 c4 c4 fe ff ff    	add    $0xfffffec4,%esp
47b58d:	53                   	push   %ebx
47b58e:	56                   	push   %esi
47b58f:	33 c9                	xor    %ecx,%ecx
47b591:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
47b594:	89 4d e8             	mov    %ecx,-0x18(%ebp)
47b597:	89 55 f8             	mov    %edx,-0x8(%ebp)
47b59a:	89 45 fc             	mov    %eax,-0x4(%ebp)
47b59d:	33 c0                	xor    %eax,%eax
47b59f:	55                   	push   %ebp
47b5a0:	68 ed b8 47 00       	push   $0x47b8ed
47b5a5:	64 ff 30             	push   %fs:(%eax)
47b5a8:	64 89 20             	mov    %esp,%fs:(%eax)
47b5ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5ae:	8b 40 1c             	mov    0x1c(%eax),%eax
47b5b1:	89 45 f4             	mov    %eax,-0xc(%ebp)
47b5b4:	8d 55 d8             	lea    -0x28(%ebp),%edx
47b5b7:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5ba:	8b 08                	mov    (%eax),%ecx
47b5bc:	ff 51 58             	call   *0x58(%ecx)
47b5bf:	8d 45 d8             	lea    -0x28(%ebp),%eax
47b5c2:	50                   	push   %eax
47b5c3:	e8 18 c6 f8 ff       	call   0x407be0
47b5c8:	85 c0                	test   %eax,%eax
47b5ca:	74 07                	je     0x47b5d3
47b5cc:	33 db                	xor    %ebx,%ebx
47b5ce:	e9 fc 02 00 00       	jmp    0x47b8cf
47b5d3:	e8 e0 c3 f8 ff       	call   0x4079b8
47b5d8:	89 45 f0             	mov    %eax,-0x10(%ebp)
47b5db:	e8 58 c4 f8 ff       	call   0x407a38
47b5e0:	89 45 ec             	mov    %eax,-0x14(%ebp)
47b5e3:	6a fd                	push   $0xfffffffd
47b5e5:	6a fd                	push   $0xfffffffd
47b5e7:	8d 45 d8             	lea    -0x28(%ebp),%eax
47b5ea:	50                   	push   %eax
47b5eb:	e8 98 c5 f8 ff       	call   0x407b88
47b5f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
47b5f3:	8b 10                	mov    (%eax),%edx
47b5f5:	ff 52 54             	call   *0x54(%edx)