430091:	8b 55 08             	mov    0x8(%ebp),%edx
430094:	83 e0 3f             	and    $0x3f,%eax
430097:	c1 fa 06             	sar    $0x6,%edx
43009a:	57                   	push   %edi
43009b:	6b f8 38             	imul   $0x38,%eax,%edi
43009e:	89 55 fc             	mov    %edx,-0x4(%ebp)
4300a1:	8b 04 95 38 5d 45 00 	mov    0x455d38(,%edx,4),%eax
4300a8:	89 45 f8             	mov    %eax,-0x8(%ebp)
4300ab:	80 7c 38 29 00       	cmpb   $0x0,0x29(%eax,%edi,1)
4300b0:	75 07                	jne    0x4300b9
4300b2:	8b c1                	mov    %ecx,%eax
4300b4:	e9 04 01 00 00       	jmp    0x4301bd
4300b9:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
4300bc:	56                   	push   %esi
4300bd:	8d 70 ff             	lea    -0x1(%eax),%esi
4300c0:	8a 0e                	mov    (%esi),%cl
4300c2:	84 c9                	test   %cl,%cl
4300c4:	78 07                	js     0x4300cd
4300c6:	8b f0                	mov    %eax,%esi
4300c8:	e9 9b 00 00 00       	jmp    0x430168
4300cd:	33 d2                	xor    %edx,%edx
4300cf:	0f b6 c1             	movzbl %cl,%eax
4300d2:	42                   	inc    %edx
4300d3:	eb 0e                	jmp    0x4300e3
4300d5:	83 fa 04             	cmp    $0x4,%edx
4300d8:	77 12                	ja     0x4300ec
4300da:	3b f3                	cmp    %ebx,%esi
4300dc:	72 0e                	jb     0x4300ec
4300de:	4e                   	dec    %esi
4300df:	42                   	inc    %edx
4300e0:	0f b6 06             	movzbl (%esi),%eax
4300e3:	80 b8 68 44 45 00 00 	cmpb   $0x0,0x454468(%eax)
4300ea:	74 e9                	je     0x4300d5
4300ec:	8a 0e                	mov    (%esi),%cl
4300ee:	0f b6 c1             	movzbl %cl,%eax
4300f1:	0f be 80 68 44 45 00 	movsbl 0x454468(%eax),%eax
4300f8:	85 c0                	test   %eax,%eax
4300fa:	75 10                	jne    0x43010c
4300fc:	e8 3f 65 ff ff       	call   0x426640
430101:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
430107:	e9 88 00 00 00       	jmp    0x430194
43010c:	40                   	inc    %eax
43010d:	3b c2                	cmp    %edx,%eax
43010f:	75 04                	jne    0x430115
430111:	03 f2                	add    %edx,%esi
430113:	eb 53                	jmp    0x430168
430115:	8b 45 f8             	mov    -0x8(%ebp),%eax
430118:	f6 44 38 28 48       	testb  $0x48,0x28(%eax,%edi,1)
43011d:	74 35                	je     0x430154
43011f:	46                   	inc    %esi
430120:	88 4c 38 2a          	mov    %cl,0x2a(%eax,%edi,1)
430124:	83 fa 02             	cmp    $0x2,%edx
430127:	72 11                	jb     0x43013a
430129:	8b 45 fc             	mov    -0x4(%ebp),%eax
43012c:	8a 0e                	mov    (%esi),%cl
43012e:	46                   	inc    %esi
43012f:	8b 04 85 38 5d 45 00 	mov    0x455d38(,%eax,4),%eax
430136:	88 4c 07 2b          	mov    %cl,0x2b(%edi,%eax,1)
43013a:	83 fa 03             	cmp    $0x3,%edx
43013d:	75 11                	jne    0x430150
43013f:	8b 45 fc             	mov    -0x4(%ebp),%eax
430142:	8a 0e                	mov    (%esi),%cl
430144:	46                   	inc    %esi
430145:	8b 04 85 38 5d 45 00 	mov    0x455d38(,%eax,4),%eax
43014c:	88 4c 07 2c          	mov    %cl,0x2c(%edi,%eax,1)
430150:	2b f2                	sub    %edx,%esi
430152:	eb 14                	jmp    0x430168
430154:	f7 da                	neg    %edx
430156:	8b c2                	mov    %edx,%eax
430158:	6a 01                	push   $0x1
43015a:	99                   	cltd
43015b:	52                   	push   %edx
43015c:	50                   	push   %eax
43015d:	ff 75 08             	push   0x8(%ebp)
430160:	e8 9b 07 00 00       	call   0x430900
430165:	83 c4 10             	add    $0x10,%esp
430168:	ff 75 18             	push   0x18(%ebp)
43016b:	2b f3                	sub    %ebx,%esi
43016d:	ff 75 14             	push   0x14(%ebp)
430170:	56                   	push   %esi
430171:	53                   	push   %ebx
430172:	6a 00                	push   $0x0
430174:	68 e9 fd 00 00       	push   $0xfde9
430179:	e8 42 2e 00 00       	call   0x432fc0
43017e:	8b d8                	mov    %eax,%ebx
430180:	83 c4 18             	add    $0x18,%esp
430183:	85 db                	test   %ebx,%ebx
430185:	75 12                	jne    0x430199
430187:	ff 15 60 f0 43 00    	call   *0x43f060
43018d:	50                   	push   %eax
43018e:	e8 53 64 ff ff       	call   0x4265e6
430193:	59                   	pop    %ecx
430194:	83 c8 ff             	or     $0xffffffff,%eax
430197:	eb 23                	jmp    0x4301bc
430199:	8b 45 fc             	mov    -0x4(%ebp),%eax
43019c:	3b de                	cmp    %esi,%ebx
43019e:	0f 94 c1             	sete   %cl
4301a1:	fe c9                	dec    %cl
4301a3:	8b 14 85 38 5d 45 00 	mov    0x455d38(,%eax,4),%edx
4301aa:	80 e1 02             	and    $0x2,%cl
4301ad:	8a 44 17 2d          	mov    0x2d(%edi,%edx,1),%al
4301b1:	24 fd                	and    $0xfd,%al
4301b3:	0a c8                	or     %al,%cl
4301b5:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
4301b8:	88 4c 17 2d          	mov    %cl,0x2d(%edi,%edx,1)
4301bc:	5e                   	pop    %esi
4301bd:	5f                   	pop    %edi
4301be:	5b                   	pop    %ebx
4301bf:	c9                   	leave
4301c0:	c3                   	ret
4301c1:	8b ff                	mov    %edi,%edi
4301c3:	55                   	push   %ebp
4301c4:	8b ec                	mov    %esp,%ebp
4301c6:	51                   	push   %ecx
4301c7:	8b 45 10             	mov    0x10(%ebp),%eax
4301ca:	56                   	push   %esi
4301cb:	57                   	push   %edi
4301cc:	8b 7d 0c             	mov    0xc(%ebp),%edi
4301cf:	8b cf                	mov    %edi,%ecx
4301d1:	8b f7                	mov    %edi,%esi
4301d3:	8d 14 47             	lea    (%edi,%eax,2),%edx
4301d6:	3b fa                	cmp    %edx,%edi
4301d8:	73 5a                	jae    0x430234
4301da:	53                   	push   %ebx
4301db:	0f b7 01             	movzwl (%ecx),%eax
4301de:	83 f8 1a             	cmp    $0x1a,%eax
4301e1:	74 36                	je     0x430219
4301e3:	83 f8 0d             	cmp    $0xd,%eax
4301e6:	75 15                	jne    0x4301fd
4301e8:	8d 59 02             	lea    0x2(%ecx),%ebx
4301eb:	3b da                	cmp    %edx,%ebx
4301ed:	73 0e                	jae    0x4301fd
4301ef:	6a 0a                	push   $0xa
4301f1:	5f                   	pop    %edi
4301f2:	66 39 3b             	cmp    %di,(%ebx)
4301f5:	75 06                	jne    0x4301fd
4301f7:	8b c7                	mov    %edi,%eax
4301f9:	6a 04                	push   $0x4
4301fb:	eb 02                	jmp    0x4301ff
4301fd:	6a 02                	push   $0x2
4301ff:	8d 7e 02             	lea    0x2(%esi),%edi
430202:	66 89 06             	mov    %ax,(%esi)
430205:	5b                   	pop    %ebx
430206:	89 7d fc             	mov    %edi,-0x4(%ebp)
430209:	03 cb                	add    %ebx,%ecx
43020b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43020e:	8b f0                	mov    %eax,%esi
430210:	8b 7d 0c             	mov    0xc(%ebp),%edi
430213:	3b ca                	cmp    %edx,%ecx
430215:	72 c4                	jb     0x4301db
430217:	eb 1a                	jmp    0x430233
430219:	8b 45 08             	mov    0x8(%ebp),%eax
43021c:	8b c8                	mov    %eax,%ecx
43021e:	83 e0 3f             	and    $0x3f,%eax
430221:	c1 f9 06             	sar    $0x6,%ecx
430224:	6b d0 38             	imul   $0x38,%eax,%edx
430227:	8b 0c 8d 38 5d 45 00 	mov    0x455d38(,%ecx,4),%ecx
43022e:	80 4c 11 28 02       	orb    $0x2,0x28(%ecx,%edx,1)
430233:	5b                   	pop    %ebx
430234:	2b f7                	sub    %edi,%esi
430236:	83 e6 fe             	and    $0xfffffffe,%esi
430239:	5f                   	pop    %edi
43023a:	8b c6                	mov    %esi,%eax
43023c:	5e                   	pop    %esi
43023d:	c9                   	leave
43023e:	c3                   	ret
43023f:	6a 14                	push   $0x14
430241:	68 70 26 45 00       	push   $0x452670
430246:	e8 85 c6 fe ff       	call   0x41c8d0
43024b:	8b 75 08             	mov    0x8(%ebp),%esi
43024e:	83 fe fe             	cmp    $0xfffffffe,%esi
430251:	75 1b                	jne    0x43026e
430253:	e8 d5 63 ff ff       	call   0x42662d
430258:	83 20 00             	andl   $0x0,(%eax)
43025b:	e8 e0 63 ff ff       	call   0x426640
430260:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
430266:	83 c8 ff             	or     $0xffffffff,%eax
430269:	e9 cc 00 00 00       	jmp    0x43033a
43026e:	85 f6                	test   %esi,%esi
430270:	78 0d                	js     0x43027f
430272:	3b 35 38 5f 45 00    	cmp    0x455f38,%esi
430278:	73 05                	jae    0x43027f
43027a:	33 c0                	xor    %eax,%eax
43027c:	40                   	inc    %eax
43027d:	eb 02                	jmp    0x430281
43027f:	33 c0                	xor    %eax,%eax
430281:	85 c0                	test   %eax,%eax
430283:	75 1a                	jne    0x43029f
430285:	e8 a3 63 ff ff       	call   0x42662d
43028a:	83 20 00             	andl   $0x0,(%eax)
43028d:	e8 ae 63 ff ff       	call   0x426640
430292:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
430298:	e8 d2 07 ff ff       	call   0x420a6f
43029d:	eb c7                	jmp    0x430266
43029f:	8b ce                	mov    %esi,%ecx
4302a1:	c1 f9 06             	sar    $0x6,%ecx
4302a4:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4302a7:	8b c6                	mov    %esi,%eax
4302a9:	83 e0 3f             	and    $0x3f,%eax
4302ac:	6b d0 38             	imul   $0x38,%eax,%edx
4302af:	89 55 dc             	mov    %edx,-0x24(%ebp)
4302b2:	8b 04 8d 38 5d 45 00 	mov    0x455d38(,%ecx,4),%eax
4302b9:	f6 44 10 28 01       	testb  $0x1,0x28(%eax,%edx,1)
4302be:	74 c5                	je     0x430285
4302c0:	81 7d 10 ff ff ff 7f 	cmpl   $0x7fffffff,0x10(%ebp)
4302c7:	76 15                	jbe    0x4302de
4302c9:	e8 5f 63 ff ff       	call   0x42662d
4302ce:	83 20 00             	andl   $0x0,(%eax)
4302d1:	e8 6a 63 ff ff       	call   0x426640
4302d6:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4302dc:	eb ba                	jmp    0x430298
4302de:	56                   	push   %esi
4302df:	e8 ca 40 00 00       	call   0x4343ae
4302e4:	59                   	pop    %ecx
4302e5:	83 cb ff             	or     $0xffffffff,%ebx
4302e8:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4302eb:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4302ef:	8b 45 e0             	mov    -0x20(%ebp),%eax
4302f2:	8b 04 85 38 5d 45 00 	mov    0x455d38(,%eax,4),%eax
4302f9:	8b 4d dc             	mov    -0x24(%ebp),%ecx
4302fc:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
430301:	75 15                	jne    0x430318
430303:	e8 38 63 ff ff       	call   0x426640
430308:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
43030e:	e8 1a 63 ff ff       	call   0x42662d
430313:	83 20 00             	andl   $0x0,(%eax)
430316:	eb 14                	jmp    0x43032c
430318:	ff 75 10             	push   0x10(%ebp)
43031b:	ff 75 0c             	push   0xc(%ebp)
43031e:	56                   	push   %esi
43031f:	e8 34 00 00 00       	call   0x430358
430324:	83 c4 0c             	add    $0xc,%esp
430327:	8b d8                	mov    %eax,%ebx
430329:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
43032c:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
430333:	e8 18 00 00 00       	call   0x430350
430338:	8b c3                	mov    %ebx,%eax
43033a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43033d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
430344:	59                   	pop    %ecx
430345:	5f                   	pop    %edi
430346:	5e                   	pop    %esi
430347:	5b                   	pop    %ebx
430348:	c9                   	leave
430349:	c3                   	ret
43034a:	8b 75 08             	mov    0x8(%ebp),%esi
43034d:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
430350:	56                   	push   %esi
430351:	e8 0d 41 00 00       	call   0x434463
430356:	59                   	pop    %ecx
430357:	c3                   	ret
430358:	8b ff                	mov    %edi,%edi
43035a:	55                   	push   %ebp
43035b:	8b ec                	mov    %esp,%ebp
43035d:	8b 55 08             	mov    0x8(%ebp),%edx
430360:	83 ec 24             	sub    $0x24,%esp
430363:	53                   	push   %ebx
430364:	57                   	push   %edi
430365:	83 fa fe             	cmp    $0xfffffffe,%edx
430368:	75 18                	jne    0x430382
43036a:	e8 be 62 ff ff       	call   0x42662d
43036f:	83 20 00             	andl   $0x0,(%eax)
430372:	e8 c9 62 ff ff       	call   0x426640
430377:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
43037d:	e9 5a 03 00 00       	jmp    0x4306dc
430382:	85 d2                	test   %edx,%edx
430384:	0f 88 3a 03 00 00    	js     0x4306c4
43038a:	3b 15 38 5f 45 00    	cmp    0x455f38,%edx
430390:	0f 83 2e 03 00 00    	jae    0x4306c4
430396:	8b c2                	mov    %edx,%eax
430398:	8b ca                	mov    %edx,%ecx
43039a:	c1 e9 06             	shr    $0x6,%ecx
43039d:	83 e0 3f             	and    $0x3f,%eax
4303a0:	6b f8 38             	imul   $0x38,%eax,%edi
4303a3:	33 db                	xor    %ebx,%ebx
4303a5:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4303a8:	43                   	inc    %ebx
4303a9:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
4303ac:	8b 04 8d 38 5d 45 00 	mov    0x455d38(,%ecx,4),%eax
4303b3:	89 7d f0             	mov    %edi,-0x10(%ebp)
4303b6:	8a 4c 07 28          	mov    0x28(%edi,%eax,1),%cl
4303ba:	88 4d ff             	mov    %cl,-0x1(%ebp)
4303bd:	84 cb                	test   %cl,%bl
4303bf:	0f 84 ff 02 00 00    	je     0x4306c4
4303c5:	8b 4d 10             	mov    0x10(%ebp),%ecx
4303c8:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
4303ce:	76 18                	jbe    0x4303e8
4303d0:	e8 58 62 ff ff       	call   0x42662d
4303d5:	83 20 00             	andl   $0x0,(%eax)
4303d8:	e8 63 62 ff ff       	call   0x426640
4303dd:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4303e3:	e9 ef 02 00 00       	jmp    0x4306d7
4303e8:	85 c9                	test   %ecx,%ecx
4303ea:	0f 84 d0 02 00 00    	je     0x4306c0
4303f0:	f6 45 ff 02          	testb  $0x2,-0x1(%ebp)
4303f4:	0f 85 c6 02 00 00    	jne    0x4306c0
4303fa:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4303fe:	74 d0                	je     0x4303d0
430400:	56                   	push   %esi
430401:	8b 74 07 18          	mov    0x18(%edi,%eax,1),%esi
430405:	8a 44 07 29          	mov    0x29(%edi,%eax,1),%al
430409:	88 45 ff             	mov    %al,-0x1(%ebp)
43040c:	89 75 ec             	mov    %esi,-0x14(%ebp)
43040f:	33 f6                	xor    %esi,%esi
430411:	0f be c0             	movsbl %al,%eax
430414:	83 e8 01             	sub    $0x1,%eax
430417:	74 33                	je     0x43044c
430419:	83 e8 01             	sub    $0x1,%eax
43041c:	75 24                	jne    0x430442
43041e:	8b c1                	mov    %ecx,%eax
430420:	f7 d0                	not    %eax
430422:	84 c3                	test   %al,%bl
430424:	75 1c                	jne    0x430442
430426:	e8 02 62 ff ff       	call   0x42662d
43042b:	21 30                	and    %esi,(%eax)
43042d:	e8 0e 62 ff ff       	call   0x426640
430432:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
430438:	e8 32 06 ff ff       	call   0x420a6f
43043d:	e9 b5 01 00 00       	jmp    0x4305f7
430442:	8b d9                	mov    %ecx,%ebx
430444:	8b 4d 0c             	mov    0xc(%ebp),%ecx
430447:	89 4d f4             	mov    %ecx,-0xc(%ebp)
43044a:	eb 73                	jmp    0x4304bf
43044c:	8b c1                	mov    %ecx,%eax
43044e:	f7 d0                	not    %eax
430450:	84 c3                	test   %al,%bl
430452:	74 d2                	je     0x430426
430454:	6a 04                	push   $0x4
430456:	d1 e9                	shr    $1,%ecx
430458:	5b                   	pop    %ebx
430459:	3b cb                	cmp    %ebx,%ecx
43045b:	72 02                	jb     0x43045f
43045d:	8b d9                	mov    %ecx,%ebx
43045f:	53                   	push   %ebx
430460:	e8 4c c0 ff ff       	call   0x42c4b1
430465:	6a 00                	push   $0x0
430467:	8b f0                	mov    %eax,%esi
430469:	e8 09 c0 ff ff       	call   0x42c477
43046e:	6a 00                	push   $0x0
430470:	e8 02 c0 ff ff       	call   0x42c477
430475:	83 c4 0c             	add    $0xc,%esp
430478:	89 75 f4             	mov    %esi,-0xc(%ebp)
43047b:	85 f6                	test   %esi,%esi
43047d:	75 1b                	jne    0x43049a
43047f:	e8 bc 61 ff ff       	call   0x426640
430484:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
43048a:	e8 9e 61 ff ff       	call   0x42662d
43048f:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
430495:	e9 5d 01 00 00       	jmp    0x4305f7
43049a:	6a 01                	push   $0x1