46fe50:	8b 4d 08             	mov    0x8(%ebp),%ecx
46fe53:	e8 fe e9 ff ff       	call   0x46e856
46fe58:	8b 45 08             	mov    0x8(%ebp),%eax
46fe5b:	c9                   	leave
46fe5c:	c3                   	ret
46fe5d:	55                   	push   %ebp
46fe5e:	8b ec                	mov    %esp,%ebp
46fe60:	a1 8c 83 4c 00       	mov    0x4c838c,%eax
46fe65:	83 ec 10             	sub    $0x10,%esp
46fe68:	80 38 00             	cmpb   $0x0,(%eax)
46fe6b:	75 04                	jne    0x46fe71
46fe6d:	6a 01                	push   $0x1
46fe6f:	eb 6a                	jmp    0x46fedb
46fe71:	8d 45 f0             	lea    -0x10(%ebp),%eax
46fe74:	50                   	push   %eax
46fe75:	e8 b3 3f 00 00       	call   0x473e2d
46fe7a:	59                   	pop    %ecx
46fe7b:	6a 7b                	push   $0x7b
46fe7d:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46fe80:	51                   	push   %ecx
46fe81:	8b c8                	mov    %eax,%ecx
46fe83:	e8 17 ed ff ff       	call   0x46eb9f
46fe88:	8d 45 f0             	lea    -0x10(%ebp),%eax
46fe8b:	50                   	push   %eax
46fe8c:	e8 c4 3b 00 00       	call   0x473a55
46fe91:	59                   	pop    %ecx
46fe92:	50                   	push   %eax
46fe93:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46fe96:	e8 a0 ed ff ff       	call   0x46ec3b
46fe9b:	a1 8c 83 4c 00       	mov    0x4c838c,%eax
46fea0:	80 38 40             	cmpb   $0x40,(%eax)
46fea3:	75 34                	jne    0x46fed9
46fea5:	40                   	inc    %eax
46fea6:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46fea9:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
46feae:	80 38 40             	cmpb   $0x40,(%eax)
46feb1:	74 09                	je     0x46febc
46feb3:	6a 2c                	push   $0x2c
46feb5:	e8 d8 ed ff ff       	call   0x46ec92
46feba:	eb cc                	jmp    0x46fe88
46febc:	40                   	inc    %eax
46febd:	6a 7d                	push   $0x7d
46febf:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
46fec4:	e8 c9 ed ff ff       	call   0x46ec92
46fec9:	8b 45 08             	mov    0x8(%ebp),%eax
46fecc:	8b 4d f8             	mov    -0x8(%ebp),%ecx
46fecf:	89 08                	mov    %ecx,(%eax)
46fed1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
46fed4:	89 48 04             	mov    %ecx,0x4(%eax)
46fed7:	c9                   	leave
46fed8:	c3                   	ret
46fed9:	6a 02                	push   $0x2
46fedb:	8b 4d 08             	mov    0x8(%ebp),%ecx
46fede:	e8 73 e9 ff ff       	call   0x46e856
46fee3:	8b 45 08             	mov    0x8(%ebp),%eax
46fee6:	c9                   	leave
46fee7:	c3                   	ret
46fee8:	55                   	push   %ebp
46fee9:	8b ec                	mov    %esp,%ebp
46feeb:	a1 8c 83 4c 00       	mov    0x4c838c,%eax
46fef0:	83 ec 28             	sub    $0x28,%esp
46fef3:	80 38 00             	cmpb   $0x0,(%eax)
46fef6:	56                   	push   %esi
46fef7:	57                   	push   %edi
46fef8:	0f 84 40 01 00 00    	je     0x47003e
46fefe:	e8 0e 20 00 00       	call   0x471f11
46ff03:	8b f8                	mov    %eax,%edi
46ff05:	85 ff                	test   %edi,%edi
46ff07:	0f 88 f2 00 00 00    	js     0x46ffff
46ff0d:	0f 84 ec 00 00 00    	je     0x46ffff
46ff13:	53                   	push   %ebx
46ff14:	8b 5d 0c             	mov    0xc(%ebp),%ebx
46ff17:	33 f6                	xor    %esi,%esi
46ff19:	89 75 f8             	mov    %esi,-0x8(%ebp)
46ff1c:	89 75 fc             	mov    %esi,-0x4(%ebp)
46ff1f:	f7 43 04 00 08 00 00 	testl  $0x800,0x4(%ebx)
46ff26:	74 1c                	je     0x46ff44
46ff28:	8d 45 f0             	lea    -0x10(%ebp),%eax
46ff2b:	c7 45 f0 d8 0c 4a 00 	movl   $0x4a0cd8,-0x10(%ebp)
46ff32:	50                   	push   %eax
46ff33:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46ff36:	c7 45 f4 02 00 00 00 	movl   $0x2,-0xc(%ebp)
46ff3d:	e8 a1 ec ff ff       	call   0x46ebe3
46ff42:	eb 40                	jmp    0x46ff84
46ff44:	8b c7                	mov    %edi,%eax
46ff46:	4f                   	dec    %edi
46ff47:	85 c0                	test   %eax,%eax
46ff49:	74 3f                	je     0x46ff8a
46ff4b:	a1 8c 83 4c 00       	mov    0x4c838c,%eax
46ff50:	80 38 00             	cmpb   $0x0,(%eax)
46ff53:	74 35                	je     0x46ff8a
46ff55:	8d 45 f0             	lea    -0x10(%ebp),%eax
46ff58:	56                   	push   %esi
46ff59:	50                   	push   %eax
46ff5a:	e8 0f 13 00 00       	call   0x47126e
46ff5f:	50                   	push   %eax
46ff60:	8d 45 e0             	lea    -0x20(%ebp),%eax
46ff63:	6a 5b                	push   $0x5b
46ff65:	50                   	push   %eax
46ff66:	e8 a3 eb ff ff       	call   0x46eb0e
46ff6b:	83 c4 14             	add    $0x14,%esp
46ff6e:	8d 4d d8             	lea    -0x28(%ebp),%ecx
46ff71:	6a 5d                	push   $0x5d
46ff73:	51                   	push   %ecx
46ff74:	8b c8                	mov    %eax,%ecx
46ff76:	e8 24 ec ff ff       	call   0x46eb9f
46ff7b:	50                   	push   %eax
46ff7c:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46ff7f:	e8 b7 ec ff ff       	call   0x46ec3b
46ff84:	80 7d fc 01          	cmpb   $0x1,-0x4(%ebp)
46ff88:	7e ba                	jle    0x46ff44
46ff8a:	39 33                	cmp    %esi,(%ebx)
46ff8c:	74 4b                	je     0x46ffd9
46ff8e:	f7 43 04 00 08 00 00 	testl  $0x800,0x4(%ebx)
46ff95:	74 0c                	je     0x46ffa3
46ff97:	8d 45 f8             	lea    -0x8(%ebp),%eax
46ff9a:	8b cb                	mov    %ebx,%ecx
46ff9c:	50                   	push   %eax
46ff9d:	8d 45 d8             	lea    -0x28(%ebp),%eax
46ffa0:	50                   	push   %eax
46ffa1:	eb 26                	jmp    0x46ffc9
46ffa3:	53                   	push   %ebx
46ffa4:	8d 45 d8             	lea    -0x28(%ebp),%eax
46ffa7:	6a 28                	push   $0x28
46ffa9:	50                   	push   %eax
46ffaa:	e8 5f eb ff ff       	call   0x46eb0e
46ffaf:	83 c4 0c             	add    $0xc,%esp
46ffb2:	8d 4d e0             	lea    -0x20(%ebp),%ecx
46ffb5:	6a 29                	push   $0x29
46ffb7:	51                   	push   %ecx
46ffb8:	8b c8                	mov    %eax,%ecx
46ffba:	e8 e0 eb ff ff       	call   0x46eb9f
46ffbf:	8d 4d f8             	lea    -0x8(%ebp),%ecx
46ffc2:	51                   	push   %ecx
46ffc3:	8d 4d f0             	lea    -0x10(%ebp),%ecx
46ffc6:	51                   	push   %ecx
46ffc7:	8b c8                	mov    %eax,%ecx
46ffc9:	e8 af eb ff ff       	call   0x46eb7d
46ffce:	8b 08                	mov    (%eax),%ecx
46ffd0:	89 4d f8             	mov    %ecx,-0x8(%ebp)
46ffd3:	8b 40 04             	mov    0x4(%eax),%eax
46ffd6:	89 45 fc             	mov    %eax,-0x4(%ebp)
46ffd9:	8d 45 f8             	lea    -0x8(%ebp),%eax
46ffdc:	50                   	push   %eax
46ffdd:	8d 45 e8             	lea    -0x18(%ebp),%eax
46ffe0:	50                   	push   %eax
46ffe1:	e8 5f 29 00 00       	call   0x472945
46ffe6:	8b 45 08             	mov    0x8(%ebp),%eax
46ffe9:	8b 55 ec             	mov    -0x14(%ebp),%edx
46ffec:	59                   	pop    %ecx
46ffed:	59                   	pop    %ecx
46ffee:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46fff1:	81 ca 00 08 00 00    	or     $0x800,%edx
46fff7:	89 08                	mov    %ecx,(%eax)
46fff9:	89 50 04             	mov    %edx,0x4(%eax)
46fffc:	5b                   	pop    %ebx
46fffd:	eb 3b                	jmp    0x47003a
46ffff:	33 f6                	xor    %esi,%esi
470001:	6a 5b                	push   $0x5b
470003:	8d 4d f8             	lea    -0x8(%ebp),%ecx
470006:	89 75 f8             	mov    %esi,-0x8(%ebp)
470009:	89 75 fc             	mov    %esi,-0x4(%ebp)
47000c:	e8 c6 fa ff ff       	call   0x46fad7
470011:	6a 01                	push   $0x1
470013:	8d 45 d8             	lea    -0x28(%ebp),%eax
470016:	50                   	push   %eax
470017:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47001a:	e8 a2 eb ff ff       	call   0x46ebc1
47001f:	8d 4d e0             	lea    -0x20(%ebp),%ecx
470022:	6a 5d                	push   $0x5d
470024:	51                   	push   %ecx
470025:	8b c8                	mov    %eax,%ecx
470027:	e8 73 eb ff ff       	call   0x46eb9f
47002c:	50                   	push   %eax
47002d:	ff 75 08             	push   0x8(%ebp)
470030:	e8 06 01 00 00       	call   0x47013b
470035:	8b 45 08             	mov    0x8(%ebp),%eax
470038:	59                   	pop    %ecx
470039:	59                   	pop    %ecx
47003a:	5f                   	pop    %edi
47003b:	5e                   	pop    %esi
47003c:	c9                   	leave
47003d:	c3                   	ret
47003e:	8b 45 0c             	mov    0xc(%ebp),%eax
470041:	33 f6                	xor    %esi,%esi
470043:	39 30                	cmp    %esi,(%eax)
470045:	74 ba                	je     0x470001
470047:	50                   	push   %eax
470048:	8d 45 d8             	lea    -0x28(%ebp),%eax
47004b:	c7 45 e8 28 16 4a 00 	movl   $0x4a1628,-0x18(%ebp)
470052:	6a 28                	push   $0x28
470054:	50                   	push   %eax
470055:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
47005c:	e8 ad ea ff ff       	call   0x46eb0e
470061:	83 c4 0c             	add    $0xc,%esp
470064:	8d 4d e8             	lea    -0x18(%ebp),%ecx
470067:	51                   	push   %ecx
470068:	8d 4d e0             	lea    -0x20(%ebp),%ecx
47006b:	51                   	push   %ecx
47006c:	8b c8                	mov    %eax,%ecx
47006e:	e8 e8 ea ff ff       	call   0x46eb5b
470073:	6a 01                	push   $0x1
470075:	8d 4d f0             	lea    -0x10(%ebp),%ecx
470078:	51                   	push   %ecx
470079:	8b c8                	mov    %eax,%ecx
47007b:	e8 41 eb ff ff       	call   0x46ebc1
470080:	8d 4d f8             	lea    -0x8(%ebp),%ecx
470083:	eb 9d                	jmp    0x470022
470085:	55                   	push   %ebp
470086:	8b ec                	mov    %esp,%ebp
470088:	83 ec 10             	sub    $0x10,%esp
47008b:	56                   	push   %esi
47008c:	6a 00                	push   $0x0
47008e:	e8 25 ed ff ff       	call   0x46edb8
470093:	59                   	pop    %ecx
470094:	89 45 f0             	mov    %eax,-0x10(%ebp)
470097:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47009a:	8d 45 f0             	lea    -0x10(%ebp),%eax
47009d:	89 55 f4             	mov    %edx,-0xc(%ebp)
4700a0:	50                   	push   %eax
4700a1:	e8 40 e7 ff ff       	call   0x46e7e6
4700a6:	a1 8c 83 4c 00       	mov    0x4c838c,%eax
4700ab:	6a 02                	push   $0x2
4700ad:	5e                   	pop    %esi
4700ae:	8a 08                	mov    (%eax),%cl
4700b0:	84 c9                	test   %cl,%cl
4700b2:	74 56                	je     0x47010a
4700b4:	40                   	inc    %eax
4700b5:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
4700ba:	0f be c1             	movsbl %cl,%eax
4700bd:	83 e8 30             	sub    $0x30,%eax
4700c0:	74 2c                	je     0x4700ee
4700c2:	2b c6                	sub    %esi,%eax
4700c4:	74 13                	je     0x4700d9
4700c6:	83 e8 03             	sub    $0x3,%eax
4700c9:	75 49                	jne    0x470114
4700cb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4700ce:	56                   	push   %esi
4700cf:	e8 82 e7 ff ff       	call   0x46e856
4700d4:	8b 45 08             	mov    0x8(%ebp),%eax
4700d7:	eb 5f                	jmp    0x470138
4700d9:	8d 45 f0             	lea    -0x10(%ebp),%eax
4700dc:	50                   	push   %eax
4700dd:	e8 41 32 00 00       	call   0x473323
4700e2:	59                   	pop    %ecx
4700e3:	50                   	push   %eax
4700e4:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4700e7:	e8 4f eb ff ff       	call   0x46ec3b
4700ec:	eb 26                	jmp    0x470114
4700ee:	8d 45 f0             	lea    -0x10(%ebp),%eax
4700f1:	c7 45 f0 04 13 4a 00 	movl   $0x4a1304,-0x10(%ebp)
4700f8:	50                   	push   %eax
4700f9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4700fc:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
470103:	e8 db ea ff ff       	call   0x46ebe3
470108:	eb 0a                	jmp    0x470114
47010a:	6a 01                	push   $0x1
47010c:	8d 4d f8             	lea    -0x8(%ebp),%ecx
47010f:	e8 d3 eb ff ff       	call   0x46ece7
470114:	8d 45 f0             	lea    -0x10(%ebp),%eax
470117:	c7 45 f0 28 14 4a 00 	movl   $0x4a1428,-0x10(%ebp)
47011e:	50                   	push   %eax
47011f:	8d 4d f8             	lea    -0x8(%ebp),%ecx
470122:	89 75 f4             	mov    %esi,-0xc(%ebp)
470125:	e8 b9 ea ff ff       	call   0x46ebe3
47012a:	8b 45 08             	mov    0x8(%ebp),%eax
47012d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
470130:	89 08                	mov    %ecx,(%eax)
470132:	8b 4d fc             	mov    -0x4(%ebp),%ecx
470135:	89 48 04             	mov    %ecx,0x4(%eax)
470138:	5e                   	pop    %esi
470139:	c9                   	leave
47013a:	c3                   	ret
47013b:	55                   	push   %ebp
47013c:	8b ec                	mov    %esp,%ebp
47013e:	8b 0d 8c 83 4c 00    	mov    0x4c838c,%ecx
470144:	83 ec 24             	sub    $0x24,%esp
470147:	8a 01                	mov    (%ecx),%al
470149:	53                   	push   %ebx
47014a:	56                   	push   %esi
47014b:	57                   	push   %edi
47014c:	84 c0                	test   %al,%al
47014e:	0f 84 d0 04 00 00    	je     0x470624
470154:	8b 7d 0c             	mov    0xc(%ebp),%edi
470157:	33 d2                	xor    %edx,%edx
470159:	41                   	inc    %ecx
47015a:	0f b6 d8             	movzbl %al,%ebx
47015d:	89 0d 8c 83 4c 00    	mov    %ecx,0x4c838c
470163:	88 55 ff             	mov    %dl,-0x1(%ebp)
470166:	89 55 f4             	mov    %edx,-0xc(%ebp)
470169:	89 55 f8             	mov    %edx,-0x8(%ebp)
47016c:	6a 02                	push   $0x2
47016e:	5e                   	pop    %esi
47016f:	83 fb 58             	cmp    $0x58,%ebx
470172:	0f 87 d5 00 00 00    	ja     0x47024d
470178:	0f 84 bf 00 00 00    	je     0x47023d
47017e:	8d 43 bd             	lea    -0x43(%ebx),%eax
470181:	83 f8 10             	cmp    $0x10,%eax
470184:	0f 87 c8 00 00 00    	ja     0x470252
47018a:	0f b6 80 63 06 47 00 	movzbl 0x470663(%eax),%eax
470191:	ff 24 85 3f 06 47 00 	jmp    *0x47063f(,%eax,4)
470198:	c7 45 e4 d0 14 4a 00 	movl   $0x4a14d0,-0x1c(%ebp)
47019f:	c7 45 e8 04 00 00 00 	movl   $0x4,-0x18(%ebp)
4701a6:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4701a9:	50                   	push   %eax
4701aa:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4701ad:	e8 ab e8 ff ff       	call   0x46ea5d
4701b2:	e9 c0 00 00 00       	jmp    0x470277
4701b7:	c7 45 e4 d8 14 4a 00 	movl   $0x4a14d8,-0x1c(%ebp)
4701be:	c7 45 e8 05 00 00 00 	movl   $0x5,-0x18(%ebp)
4701c5:	eb df                	jmp    0x4701a6
4701c7:	c7 45 e4 e0 14 4a 00 	movl   $0x4a14e0,-0x1c(%ebp)
4701ce:	c7 45 e8 03 00 00 00 	movl   $0x3,-0x18(%ebp)
4701d5:	eb cf                	jmp    0x4701a6
4701d7:	c7 45 e4 e4 14 4a 00 	movl   $0x4a14e4,-0x1c(%ebp)
4701de:	eb bf                	jmp    0x47019f
4701e0:	c7 45 e4 ec 14 4a 00 	movl   $0x4a14ec,-0x1c(%ebp)
4701e7:	c7 45 e8 05 00 00 00 	movl   $0x5,-0x18(%ebp)
4701ee:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4701f1:	50                   	push   %eax
4701f2:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4701f5:	e8 63 e8 ff ff       	call   0x46ea5d
4701fa:	e9 f8 03 00 00       	jmp    0x4705f7
4701ff:	8d 45 e4             	lea    -0x1c(%ebp),%eax
470202:	c7 45 e4 44 14 4a 00 	movl   $0x4a1444,-0x1c(%ebp)
470209:	50                   	push   %eax
47020a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47020d:	c7 45 e8 05 00 00 00 	movl   $0x5,-0x18(%ebp)
470214:	e8 44 e8 ff ff       	call   0x46ea5d
470219:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47021c:	c7 45 e4 f4 14 4a 00 	movl   $0x4a14f4,-0x1c(%ebp)
470223:	50                   	push   %eax
470224:	8d 4d f4             	lea    -0xc(%ebp),%ecx
470227:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
47022e:	e8 b0 e9 ff ff       	call   0x46ebe3
470233:	eb 42                	jmp    0x470277
470235:	83 e3 03             	and    $0x3,%ebx
470238:	e9 9f 01 00 00       	jmp    0x4703dc
47023d:	c7 45 e4 04 13 4a 00 	movl   $0x4a1304,-0x1c(%ebp)
470244:	c7 45 e8 04 00 00 00 	movl   $0x4,-0x18(%ebp)
47024b:	eb a1                	jmp    0x4701ee
47024d:	83 fb 5f             	cmp    $0x5f,%ebx
470250:	74 66                	je     0x4702b8
470252:	8d 41 ff             	lea    -0x1(%ecx),%eax
470255:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
47025a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47025d:	50                   	push   %eax
47025e:	e8 6c 11 00 00       	call   0x4713cf
470263:	59                   	pop    %ecx
470264:	8b 08                	mov    (%eax),%ecx