64706a:	74 0d                	je     0x647079
64706c:	83 f8 7a             	cmp    $0x7a,%eax
64706f:	74 13                	je     0x647084
647071:	50                   	push   %eax
647072:	8b cf                	mov    %edi,%ecx
647074:	e8 57 04 00 00       	call   0x6474d0
647079:	32 c0                	xor    %al,%al
64707b:	5f                   	pop    %edi
64707c:	5e                   	pop    %esi
64707d:	5b                   	pop    %ebx
64707e:	8b e5                	mov    %ebp,%esp
647080:	5d                   	pop    %ebp
647081:	c2 08 00             	ret    $0x8
647084:	8b 45 fc             	mov    -0x4(%ebp),%eax
647087:	85 c0                	test   %eax,%eax
647089:	75 23                	jne    0x6470ae
64708b:	e8 50 f3 fe ff       	call   0x6363e0
647090:	68 c0 33 6e 00       	push   $0x6e33c0
647095:	68 fc 56 6e 00       	push   $0x6e56fc
64709a:	50                   	push   %eax
64709b:	8b 08                	mov    (%eax),%ecx
64709d:	ff 51 24             	call   *0x24(%ecx)
6470a0:	83 c4 0c             	add    $0xc,%esp
6470a3:	32 c0                	xor    %al,%al
6470a5:	5f                   	pop    %edi
6470a6:	5e                   	pop    %esi
6470a7:	5b                   	pop    %ebx
6470a8:	8b e5                	mov    %ebp,%esp
6470aa:	5d                   	pop    %ebp
6470ab:	c2 08 00             	ret    $0x8
6470ae:	33 c9                	xor    %ecx,%ecx
6470b0:	d1 e8                	shr    $1,%eax
6470b2:	ba 02 00 00 00       	mov    $0x2,%edx
6470b7:	f7 e2                	mul    %edx
6470b9:	68 38 26 73 00       	push   $0x732638
6470be:	0f 90 c1             	seto   %cl
6470c1:	f7 d9                	neg    %ecx
6470c3:	0b c8                	or     %eax,%ecx
6470c5:	51                   	push   %ecx
6470c6:	e8 10 40 00 00       	call   0x64b0db
6470cb:	8b f0                	mov    %eax,%esi
6470cd:	83 c4 08             	add    $0x8,%esp
6470d0:	85 f6                	test   %esi,%esi
6470d2:	75 39                	jne    0x64710d
6470d4:	e8 07 f3 fe ff       	call   0x6363e0
6470d9:	68 34 34 6e 00       	push   $0x6e3434
6470de:	68 fc 56 6e 00       	push   $0x6e56fc
6470e3:	50                   	push   %eax
6470e4:	8b 08                	mov    (%eax),%ecx
6470e6:	ff 51 24             	call   *0x24(%ecx)
6470e9:	83 ec 0c             	sub    $0xc,%esp
6470ec:	8b cc                	mov    %esp,%ecx
6470ee:	68 68 34 6e 00       	push   $0x6e3468
6470f3:	e8 28 15 df ff       	call   0x438620
6470f8:	56                   	push   %esi
6470f9:	6a 14                	push   $0x14
6470fb:	8b cf                	mov    %edi,%ecx
6470fd:	e8 0e 0c 00 00       	call   0x647d10
647102:	32 c0                	xor    %al,%al
647104:	5f                   	pop    %edi
647105:	5e                   	pop    %esi
647106:	5b                   	pop    %ebx
647107:	8b e5                	mov    %ebp,%esp
647109:	5d                   	pop    %ebp
64710a:	c2 08 00             	ret    $0x8
64710d:	6a 00                	push   $0x0
64710f:	8d 45 fc             	lea    -0x4(%ebp),%eax
647112:	50                   	push   %eax
647113:	56                   	push   %esi
647114:	6a 00                	push   $0x0
647116:	53                   	push   %ebx
647117:	ff b7 b0 00 00 00    	push   0xb0(%edi)
64711d:	ff 15 a8 24 68 00    	call   *0x6824a8
647123:	85 c0                	test   %eax,%eax
647125:	75 22                	jne    0x647149
647127:	ff 15 e0 21 68 00    	call   *0x6821e0
64712d:	50                   	push   %eax
64712e:	8b cf                	mov    %edi,%ecx
647130:	e8 9b 03 00 00       	call   0x6474d0
647135:	56                   	push   %esi
647136:	e8 4e 9f f9 ff       	call   0x5e1089
64713b:	83 c4 04             	add    $0x4,%esp
64713e:	32 c0                	xor    %al,%al
647140:	5f                   	pop    %edi
647141:	5e                   	pop    %esi
647142:	5b                   	pop    %ebx
647143:	8b e5                	mov    %ebp,%esp
647145:	5d                   	pop    %ebp
647146:	c2 08 00             	ret    $0x8
647149:	8b 4d 0c             	mov    0xc(%ebp),%ecx
64714c:	56                   	push   %esi
64714d:	e8 1e 14 df ff       	call   0x438570
647152:	56                   	push   %esi
647153:	e8 31 9f f9 ff       	call   0x5e1089
647158:	83 c4 04             	add    $0x4,%esp
64715b:	b0 01                	mov    $0x1,%al
64715d:	5f                   	pop    %edi
64715e:	5e                   	pop    %esi
64715f:	5b                   	pop    %ebx
647160:	8b e5                	mov    %ebp,%esp
647162:	5d                   	pop    %ebp
647163:	c2 08 00             	ret    $0x8
647166:	cc                   	int3
647167:	cc                   	int3
647168:	cc                   	int3
647169:	cc                   	int3
64716a:	cc                   	int3
64716b:	cc                   	int3
64716c:	cc                   	int3
64716d:	cc                   	int3
64716e:	cc                   	int3
64716f:	cc                   	int3
647170:	55                   	push   %ebp
647171:	8b ec                	mov    %esp,%ebp
647173:	53                   	push   %ebx
647174:	56                   	push   %esi
647175:	8b f1                	mov    %ecx,%esi
647177:	80 7e 20 00          	cmpb   $0x0,0x20(%esi)
64717b:	74 08                	je     0x647185
64717d:	b0 01                	mov    $0x1,%al
64717f:	5e                   	pop    %esi
647180:	5b                   	pop    %ebx
647181:	5d                   	pop    %ebp
647182:	c2 08 00             	ret    $0x8
647185:	8b 45 08             	mov    0x8(%ebp),%eax
647188:	85 c0                	test   %eax,%eax
64718a:	74 46                	je     0x6471d2
64718c:	83 38 00             	cmpl   $0x0,(%eax)
64718f:	74 41                	je     0x6471d2
647191:	8b 4d 0c             	mov    0xc(%ebp),%ecx
647194:	85 c9                	test   %ecx,%ecx
647196:	74 3a                	je     0x6471d2
647198:	89 46 1c             	mov    %eax,0x1c(%esi)
64719b:	8d 81 f0 00 00 00    	lea    0xf0(%ecx),%eax
6471a1:	89 4e 24             	mov    %ecx,0x24(%esi)
6471a4:	8b ce                	mov    %esi,%ecx
6471a6:	50                   	push   %eax
6471a7:	e8 54 05 00 00       	call   0x647700
6471ac:	8a d8                	mov    %al,%bl
6471ae:	8d 4e 7c             	lea    0x7c(%esi),%ecx
6471b1:	8b 46 24             	mov    0x24(%esi),%eax
6471b4:	05 08 01 00 00       	add    $0x108,%eax
6471b9:	3b c8                	cmp    %eax,%ecx
6471bb:	74 0a                	je     0x6471c7
6471bd:	6a ff                	push   $0xffffffff
6471bf:	6a 00                	push   $0x0
6471c1:	50                   	push   %eax
6471c2:	e8 29 17 df ff       	call   0x4388f0
6471c7:	88 5e 20             	mov    %bl,0x20(%esi)
6471ca:	8a c3                	mov    %bl,%al
6471cc:	5e                   	pop    %esi
6471cd:	5b                   	pop    %ebx
6471ce:	5d                   	pop    %ebp
6471cf:	c2 08 00             	ret    $0x8
6471d2:	83 ec 18             	sub    $0x18,%esp
6471d5:	8b cc                	mov    %esp,%ecx
6471d7:	68 fc 56 6e 00       	push   $0x6e56fc
6471dc:	e8 3f 14 df ff       	call   0x438620
6471e1:	6a 00                	push   $0x0
6471e3:	6a 13                	push   $0x13
6471e5:	8b ce                	mov    %esi,%ecx
6471e7:	e8 24 0b 00 00       	call   0x647d10
6471ec:	5e                   	pop    %esi
6471ed:	32 c0                	xor    %al,%al
6471ef:	5b                   	pop    %ebx
6471f0:	5d                   	pop    %ebp
6471f1:	c2 08 00             	ret    $0x8
6471f4:	cc                   	int3
6471f5:	cc                   	int3
6471f6:	cc                   	int3
6471f7:	cc                   	int3
6471f8:	cc                   	int3
6471f9:	cc                   	int3
6471fa:	cc                   	int3
6471fb:	cc                   	int3
6471fc:	cc                   	int3
6471fd:	cc                   	int3
6471fe:	cc                   	int3
6471ff:	cc                   	int3
647200:	55                   	push   %ebp
647201:	8b ec                	mov    %esp,%ebp
647203:	56                   	push   %esi
647204:	ff 75 14             	push   0x14(%ebp)
647207:	8b f1                	mov    %ecx,%esi
647209:	ff 75 10             	push   0x10(%ebp)
64720c:	ff 75 0c             	push   0xc(%ebp)
64720f:	ff 75 08             	push   0x8(%ebp)
647212:	6a 00                	push   $0x0
647214:	e8 87 ed ff ff       	call   0x645fa0
647219:	88 46 28             	mov    %al,0x28(%esi)
64721c:	5e                   	pop    %esi
64721d:	5d                   	pop    %ebp
64721e:	c2 10 00             	ret    $0x10
647221:	cc                   	int3
647222:	cc                   	int3
647223:	cc                   	int3
647224:	cc                   	int3
647225:	cc                   	int3
647226:	cc                   	int3
647227:	cc                   	int3
647228:	cc                   	int3
647229:	cc                   	int3
64722a:	cc                   	int3
64722b:	cc                   	int3
64722c:	cc                   	int3
64722d:	cc                   	int3
64722e:	cc                   	int3
64722f:	cc                   	int3
647230:	56                   	push   %esi
647231:	6a 00                	push   $0x0
647233:	6a 00                	push   $0x0
647235:	6a 00                	push   $0x0
647237:	6a 00                	push   $0x0
647239:	6a 01                	push   $0x1
64723b:	8b f1                	mov    %ecx,%esi
64723d:	e8 5e ed ff ff       	call   0x645fa0
647242:	88 46 28             	mov    %al,0x28(%esi)
647245:	5e                   	pop    %esi
647246:	c3                   	ret
647247:	cc                   	int3
647248:	cc                   	int3
647249:	cc                   	int3
64724a:	cc                   	int3
64724b:	cc                   	int3
64724c:	cc                   	int3
64724d:	cc                   	int3
64724e:	cc                   	int3
64724f:	cc                   	int3
647250:	55                   	push   %ebp
647251:	8b ec                	mov    %esp,%ebp
647253:	51                   	push   %ecx
647254:	57                   	push   %edi
647255:	8b 7d 08             	mov    0x8(%ebp),%edi
647258:	8d 45 fc             	lea    -0x4(%ebp),%eax
64725b:	6a 00                	push   $0x0
64725d:	50                   	push   %eax
64725e:	6a 00                	push   $0x0
647260:	6a 00                	push   $0x0
647262:	6a 16                	push   $0x16
647264:	ff 37                	push   (%edi)
647266:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
64726d:	ff 15 a8 24 68 00    	call   *0x6824a8
647273:	ff 15 e0 21 68 00    	call   *0x6821e0
647279:	83 f8 7a             	cmp    $0x7a,%eax
64727c:	75 5a                	jne    0x6472d8
64727e:	8b 45 fc             	mov    -0x4(%ebp),%eax
647281:	33 c9                	xor    %ecx,%ecx
647283:	d1 e8                	shr    $1,%eax
647285:	ba 02 00 00 00       	mov    $0x2,%edx
64728a:	f7 e2                	mul    %edx
64728c:	56                   	push   %esi
64728d:	0f 90 c1             	seto   %cl
647290:	f7 d9                	neg    %ecx
647292:	0b c8                	or     %eax,%ecx
647294:	51                   	push   %ecx
647295:	e8 e6 9d f9 ff       	call   0x5e1080
64729a:	83 c4 04             	add    $0x4,%esp
64729d:	8b f0                	mov    %eax,%esi
64729f:	8d 45 fc             	lea    -0x4(%ebp),%eax
6472a2:	6a 00                	push   $0x0
6472a4:	50                   	push   %eax
6472a5:	56                   	push   %esi
6472a6:	6a 00                	push   $0x0
6472a8:	6a 16                	push   $0x16
6472aa:	ff 37                	push   (%edi)
6472ac:	ff 15 a8 24 68 00    	call   *0x6824a8
6472b2:	85 c0                	test   %eax,%eax
6472b4:	74 14                	je     0x6472ca
6472b6:	e8 25 f1 fe ff       	call   0x6363e0
6472bb:	56                   	push   %esi
6472bc:	68 9c 34 6e 00       	push   $0x6e349c
6472c1:	50                   	push   %eax
6472c2:	8b 08                	mov    (%eax),%ecx
6472c4:	ff 51 14             	call   *0x14(%ecx)
6472c7:	83 c4 0c             	add    $0xc,%esp
6472ca:	85 f6                	test   %esi,%esi
6472cc:	74 09                	je     0x6472d7
6472ce:	56                   	push   %esi
6472cf:	e8 b5 9d f9 ff       	call   0x5e1089
6472d4:	83 c4 04             	add    $0x4,%esp
6472d7:	5e                   	pop    %esi
6472d8:	5f                   	pop    %edi
6472d9:	8b e5                	mov    %ebp,%esp
6472db:	5d                   	pop    %ebp
6472dc:	c3                   	ret
6472dd:	cc                   	int3
6472de:	cc                   	int3
6472df:	cc                   	int3
6472e0:	55                   	push   %ebp
6472e1:	8b ec                	mov    %esp,%ebp
6472e3:	53                   	push   %ebx
6472e4:	56                   	push   %esi
6472e5:	8b 75 08             	mov    0x8(%ebp),%esi
6472e8:	b3 01                	mov    $0x1,%bl
6472ea:	57                   	push   %edi
6472eb:	8b f9                	mov    %ecx,%edi
6472ed:	81 fe 94 01 00 00    	cmp    $0x194,%esi
6472f3:	77 67                	ja     0x64735c
6472f5:	74 4a                	je     0x647341
6472f7:	81 fe 30 01 00 00    	cmp    $0x130,%esi
6472fd:	77 1f                	ja     0x64731e
6472ff:	74 14                	je     0x647315
647301:	83 fe 64             	cmp    $0x64,%esi
647304:	74 0f                	je     0x647315
647306:	8d 86 38 ff ff ff    	lea    -0xc8(%esi),%eax
64730c:	83 f8 06             	cmp    $0x6,%eax
64730f:	0f 87 ff 00 00 00    	ja     0x647414
647315:	32 c0                	xor    %al,%al
647317:	5f                   	pop    %edi
647318:	5e                   	pop    %esi
647319:	5b                   	pop    %ebx
64731a:	5d                   	pop    %ebp
64731b:	c2 04 00             	ret    $0x4
64731e:	81 fe 91 01 00 00    	cmp    $0x191,%esi
647324:	0f 85 ea 00 00 00    	jne    0x647414
64732a:	83 ec 18             	sub    $0x18,%esp
64732d:	8b cc                	mov    %esp,%ecx
64732f:	68 fc 56 6e 00       	push   $0x6e56fc
647334:	e8 e7 12 df ff       	call   0x438620
647339:	56                   	push   %esi
64733a:	6a 0a                	push   $0xa
64733c:	e9 e5 00 00 00       	jmp    0x647426
647341:	83 ec 18             	sub    $0x18,%esp
647344:	8b cc                	mov    %esp,%ecx
647346:	68 fc 56 6e 00       	push   $0x6e56fc
64734b:	e8 d0 12 df ff       	call   0x438620
647350:	68 94 01 00 00       	push   $0x194
647355:	6a 06                	push   $0x6
647357:	e9 ca 00 00 00       	jmp    0x647426
64735c:	8d 86 69 fe ff ff    	lea    -0x197(%esi),%eax
647362:	83 f8 61             	cmp    $0x61,%eax
647365:	0f 87 a9 00 00 00    	ja     0x647414
64736b:	0f b6 80 64 74 64 00 	movzbl 0x647464(%eax),%eax
647372:	ff 24 85 50 74 64 00 	jmp    *0x647450(,%eax,4)
647379:	83 ec 18             	sub    $0x18,%esp
64737c:	8b cc                	mov    %esp,%ecx
64737e:	68 fc 56 6e 00       	push   $0x6e56fc
647383:	e8 98 12 df ff       	call   0x438620
647388:	56                   	push   %esi
647389:	6a 0b                	push   $0xb
64738b:	e9 96 00 00 00       	jmp    0x647426
647390:	8b 47 24             	mov    0x24(%edi),%eax
647393:	80 b8 5f 01 00 00 00 	cmpb   $0x0,0x15f(%eax)
64739a:	75 78                	jne    0x647414
64739c:	8b 47 24             	mov    0x24(%edi),%eax
64739f:	80 b8 5d 01 00 00 00 	cmpb   $0x0,0x15d(%eax)
6473a6:	75 2c                	jne    0x6473d4
6473a8:	83 ec 18             	sub    $0x18,%esp
6473ab:	8b cc                	mov    %esp,%ecx
6473ad:	68 fc 56 6e 00       	push   $0x6e56fc