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
470266:	8b 50 04             	mov    0x4(%eax),%edx
470269:	89 4d f4             	mov    %ecx,-0xc(%ebp)
47026c:	89 55 f8             	mov    %edx,-0x8(%ebp)
47026f:	85 c9                	test   %ecx,%ecx
470271:	0f 84 0b 03 00 00    	je     0x470582
470277:	83 eb 43             	sub    $0x43,%ebx
47027a:	74 26                	je     0x4702a2
47027c:	2b de                	sub    %esi,%ebx
47027e:	74 1a                	je     0x47029a
470280:	2b de                	sub    %esi,%ebx
470282:	74 16                	je     0x47029a
470284:	2b de                	sub    %esi,%ebx
470286:	74 12                	je     0x47029a
470288:	2b de                	sub    %esi,%ebx
47028a:	74 0e                	je     0x47029a
47028c:	83 eb 14             	sub    $0x14,%ebx
47028f:	0f 84 14 03 00 00    	je     0x4705a9
470295:	e9 5d 03 00 00       	jmp    0x4705f7
47029a:	8d 4d ec             	lea    -0x14(%ebp),%ecx
47029d:	e9 23 03 00 00       	jmp    0x4705c5
4702a2:	c7 45 e4 94 15 4a 00 	movl   $0x4a1594,-0x1c(%ebp)
4702a9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4702ac:	c7 45 e8 07 00 00 00 	movl   $0x7,-0x18(%ebp)
4702b3:	e9 1b 03 00 00       	jmp    0x4705d3
4702b8:	8a 11                	mov    (%ecx),%dl
4702ba:	8d 41 01             	lea    0x1(%ecx),%eax
4702bd:	a3 8c 83 4c 00       	mov    %eax,0x4c838c
4702c2:	0f b6 c2             	movzbl %dl,%eax
4702c5:	88 55 ff             	mov    %dl,-0x1(%ebp)
4702c8:	83 f8 4e             	cmp    $0x4e,%eax
4702cb:	0f 87 f3 00 00 00    	ja     0x4703c4
4702d1:	0f 84 da 00 00 00    	je     0x4703b1
4702d7:	83 f8 48             	cmp    $0x48,%eax
4702da:	0f 87 89 00 00 00    	ja     0x470369
4702e0:	0f 84 bf 00 00 00    	je     0x4703a5
4702e6:	83 e8 00             	sub    $0x0,%eax
4702e9:	74 69                	je     0x470354
4702eb:	83 e8 24             	sub    $0x24,%eax
4702ee:	74 37                	je     0x470327
4702f0:	83 e8 20             	sub    $0x20,%eax
4702f3:	74 1f                	je     0x470314
4702f5:	83 e8 01             	sub    $0x1,%eax
4702f8:	74 1a                	je     0x470314
4702fa:	83 e8 01             	sub    $0x1,%eax
4702fd:	74 09                	je     0x470308
4702ff:	83 e8 01             	sub    $0x1,%eax
470302:	0f 85 87 02 00 00    	jne    0x47058f
470308:	c7 45 e4 0c 15 4a 00 	movl   $0x4a150c,-0x1c(%ebp)
47030f:	e9 82 02 00 00       	jmp    0x470596
470314:	c7 45 e4 04 15 4a 00 	movl   $0x4a1504,-0x1c(%ebp)
47031b:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
470322:	e9 76 02 00 00       	jmp    0x47059d
470327:	8d 45 ec             	lea    -0x14(%ebp),%eax
47032a:	c7 45 e4 84 15 4a 00 	movl   $0x4a1584,-0x1c(%ebp)
470331:	57                   	push   %edi
470332:	50                   	push   %eax
470333:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
47033a:	e8 fc fd ff ff       	call   0x47013b
47033f:	50                   	push   %eax
470340:	8d 45 e4             	lea    -0x1c(%ebp),%eax
470343:	50                   	push   %eax
470344:	ff 75 08             	push   0x8(%ebp)
470347:	e8 a0 e7 ff ff       	call   0x46eaec
47034c:	83 c4 14             	add    $0x14,%esp
47034f:	e9 e0 02 00 00       	jmp    0x470634
470354:	89 0d 8c 83 4c 00    	mov    %ecx,0x4c838c
47035a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47035d:	6a 01                	push   $0x1
47035f:	e8 1a e7 ff ff       	call   0x46ea7e
470364:	e9 40 02 00 00       	jmp    0x4705a9
470369:	83 e8 49             	sub    $0x49,%eax
47036c:	74 37                	je     0x4703a5
47036e:	83 e8 01             	sub    $0x1,%eax
470371:	74 26                	je     0x470399
470373:	83 e8 01             	sub    $0x1,%eax
470376:	74 21                	je     0x470399
470378:	83 e8 01             	sub    $0x1,%eax
47037b:	74 09                	je     0x470386
47037d:	83 e8 01             	sub    $0x1,%eax
470380:	0f 85 09 02 00 00    	jne    0x47058f
470386:	c7 45 e4 24 15 4a 00 	movl   $0x4a1524,-0x1c(%ebp)
47038d:	c7 45 e8 08 00 00 00 	movl   $0x8,-0x18(%ebp)
470394:	e9 04 02 00 00       	jmp    0x47059d
470399:	c7 45 e4 1c 15 4a 00 	movl   $0x4a151c,-0x1c(%ebp)
4703a0:	e9 f1 01 00 00       	jmp    0x470596
4703a5:	c7 45 e4 14 15 4a 00 	movl   $0x4a1514,-0x1c(%ebp)
4703ac:	e9 e5 01 00 00       	jmp    0x470596
4703b1:	c7 45 e4 fc 14 4a 00 	movl   $0x4a14fc,-0x1c(%ebp)
4703b8:	c7 45 e8 04 00 00 00 	movl   $0x4,-0x18(%ebp)
4703bf:	e9 d9 01 00 00       	jmp    0x47059d
4703c4:	83 e8 4f             	sub    $0x4f,%eax
4703c7:	83 f8 0a             	cmp    $0xa,%eax
4703ca:	0f 87 bf 01 00 00    	ja     0x47058f
4703d0:	ff 24 85 77 06 47 00 	jmp    *0x470677(,%eax,4)
4703d7:	6a fe                	push   $0xfffffffe
4703d9:	5b                   	pop    %ebx
4703da:	33 d2                	xor    %edx,%edx
4703dc:	89 55 f4             	mov    %edx,-0xc(%ebp)
4703df:	8b c7                	mov    %edi,%eax
4703e1:	89 55 f8             	mov    %edx,-0x8(%ebp)
4703e4:	8b 08                	mov    (%eax),%ecx
4703e6:	8b 40 04             	mov    0x4(%eax),%eax
4703e9:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
4703ec:	89 45 e8             	mov    %eax,-0x18(%ebp)
4703ef:	83 fb fe             	cmp    $0xfffffffe,%ebx
4703f2:	75 4b                	jne    0x47043f
4703f4:	be 00 08 00 00       	mov    $0x800,%esi
4703f9:	0b c6                	or     %esi,%eax
4703fb:	89 45 e8             	mov    %eax,-0x18(%ebp)
4703fe:	8d 45 e4             	lea    -0x1c(%ebp),%eax
470401:	52                   	push   %edx
470402:	50                   	push   %eax
470403:	8d 45 f4             	lea    -0xc(%ebp),%eax
470406:	50                   	push   %eax
470407:	8d 45 ec             	lea    -0x14(%ebp),%eax
47040a:	50                   	push   %eax
47040b:	e8 f0 28 00 00       	call   0x472d00
470410:	8b 55 f0             	mov    -0x10(%ebp),%edx
470413:	83 c4 10             	add    $0x10,%esp
470416:	85 d6                	test   %edx,%esi
470418:	75 1d                	jne    0x470437
47041a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
47041d:	c7 45 e4 d8 0c 4a 00 	movl   $0x4a0cd8,-0x1c(%ebp)
470424:	50                   	push   %eax
470425:	8d 4d ec             	lea    -0x14(%ebp),%ecx
470428:	c7 45 e8 02 00 00 00 	movl   $0x2,-0x18(%ebp)
47042f:	e8 af e7 ff ff       	call   0x46ebe3
470434:	8b 55 f0             	mov    -0x10(%ebp),%edx
470437:	8b 4d ec             	mov    -0x14(%ebp),%ecx
47043a:	e9 43 01 00 00       	jmp    0x470582
47043f:	85 c9                	test   %ecx,%ecx
470441:	75 62                	jne    0x4704a5
470443:	8b f3                	mov    %ebx,%esi
470445:	83 e6 02             	and    $0x2,%esi
470448:	f6 c3 01             	test   $0x1,%bl
47044b:	74 3a                	je     0x470487
47044d:	8d 45 ec             	lea    -0x14(%ebp),%eax
470450:	c7 45 ec 9c 15 4a 00 	movl   $0x4a159c,-0x14(%ebp)
470457:	50                   	push   %eax
470458:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47045b:	c7 45 f0 05 00 00 00 	movl   $0x5,-0x10(%ebp)
470462:	e8 f6 e5 ff ff       	call   0x46ea5d
470467:	85 f6                	test   %esi,%esi
470469:	74 3a                	je     0x4704a5
47046b:	8d 45 ec             	lea    -0x14(%ebp),%eax
47046e:	c7 45 ec a4 15 4a 00 	movl   $0x4a15a4,-0x14(%ebp)
470475:	50                   	push   %eax
470476:	8d 4d f4             	lea    -0xc(%ebp),%ecx
470479:	c7 45 f0 09 00 00 00 	movl   $0x9,-0x10(%ebp)
470480:	e8 5e e7 ff ff       	call   0x46ebe3
470485:	eb 1e                	jmp    0x4704a5
470487:	85 f6                	test   %esi,%esi
470489:	74 1a                	je     0x4704a5
47048b:	8d 45 ec             	lea    -0x14(%ebp),%eax
47048e:	c7 45 ec 6c 14 4a 00 	movl   $0x4a146c,-0x14(%ebp)
470495:	50                   	push   %eax
470496:	8d 4d f4             	lea    -0xc(%ebp),%ecx
470499:	c7 45 f0 08 00 00 00 	movl   $0x8,-0x10(%ebp)
4704a0:	e8 b8 e5 ff ff       	call   0x46ea5d
4704a5:	6a 01                	push   $0x1
4704a7:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4704aa:	50                   	push   %eax
4704ab:	8d 45 f4             	lea    -0xc(%ebp),%eax
4704ae:	50                   	push   %eax
4704af:	ff 75 08             	push   0x8(%ebp)
4704b2:	e8 49 28 00 00       	call   0x472d00
4704b7:	83 c4 10             	add    $0x10,%esp
4704ba:	e9 75 01 00 00       	jmp    0x470634
4704bf:	c7 45 e4 30 15 4a 00 	movl   $0x4a1530,-0x1c(%ebp)
4704c6:	c7 45 e8 09 00 00 00 	movl   $0x9,-0x18(%ebp)
4704cd:	e9 cb 00 00 00       	jmp    0x47059d
4704d2:	c7 45 e4 3c 15 4a 00 	movl   $0x4a153c,-0x1c(%ebp)
4704d9:	e9 b8 00 00 00       	jmp    0x470596
4704de:	c7 45 e4 44 15 4a 00 	movl   $0x4a1544,-0x1c(%ebp)
4704e5:	e9 a3 fe ff ff       	jmp    0x47038d