42b0db:	74 0c                	je     0x42b0e9
42b0dd:	e8 66 bd ff ff       	call   0x426e48
42b0e2:	83 c0 40             	add    $0x40,%eax
42b0e5:	3b f0                	cmp    %eax,%esi
42b0e7:	75 0b                	jne    0x42b0f4
42b0e9:	57                   	push   %edi
42b0ea:	e8 cc ad 00 00       	call   0x435ebb
42b0ef:	59                   	pop    %ecx
42b0f0:	85 c0                	test   %eax,%eax
42b0f2:	75 07                	jne    0x42b0fb
42b0f4:	56                   	push   %esi
42b0f5:	e8 3a b1 00 00       	call   0x436234
42b0fa:	59                   	pop    %ecx
42b0fb:	f7 46 0c 08 01 00 00 	testl  $0x108,0xc(%esi)
42b102:	74 7a                	je     0x42b17e
42b104:	8b 56 08             	mov    0x8(%esi),%edx
42b107:	8b 0e                	mov    (%esi),%ecx
42b109:	2b ca                	sub    %edx,%ecx
42b10b:	89 4d 0c             	mov    %ecx,0xc(%ebp)
42b10e:	8d 42 01             	lea    0x1(%edx),%eax
42b111:	89 06                	mov    %eax,(%esi)
42b113:	8b 46 18             	mov    0x18(%esi),%eax
42b116:	48                   	dec    %eax
42b117:	89 46 04             	mov    %eax,0x4(%esi)
42b11a:	85 c9                	test   %ecx,%ecx
42b11c:	7e 17                	jle    0x42b135
42b11e:	51                   	push   %ecx
42b11f:	52                   	push   %edx
42b120:	57                   	push   %edi
42b121:	e8 a0 29 00 00       	call   0x42dac6
42b126:	83 c4 0c             	add    $0xc,%esp
42b129:	8b d8                	mov    %eax,%ebx
42b12b:	eb 47                	jmp    0x42b174
42b12d:	83 c9 20             	or     $0x20,%ecx
42b130:	89 4e 0c             	mov    %ecx,0xc(%esi)
42b133:	eb 68                	jmp    0x42b19d
42b135:	83 ff ff             	cmp    $0xffffffff,%edi
42b138:	74 1b                	je     0x42b155
42b13a:	83 ff fe             	cmp    $0xfffffffe,%edi
42b13d:	74 16                	je     0x42b155
42b13f:	8b c7                	mov    %edi,%eax
42b141:	8b cf                	mov    %edi,%ecx
42b143:	c1 f8 05             	sar    $0x5,%eax
42b146:	83 e1 1f             	and    $0x1f,%ecx
42b149:	c1 e1 06             	shl    $0x6,%ecx
42b14c:	03 0c 85 e0 49 4c 00 	add    0x4c49e0(,%eax,4),%ecx
42b153:	eb 05                	jmp    0x42b15a
42b155:	b9 90 fe 4b 00       	mov    $0x4bfe90,%ecx
42b15a:	f6 41 04 20          	testb  $0x20,0x4(%ecx)
42b15e:	74 14                	je     0x42b174
42b160:	6a 02                	push   $0x2
42b162:	53                   	push   %ebx
42b163:	53                   	push   %ebx
42b164:	57                   	push   %edi
42b165:	e8 ab 68 00 00       	call   0x431a15
42b16a:	23 c2                	and    %edx,%eax
42b16c:	83 c4 10             	add    $0x10,%esp
42b16f:	83 f8 ff             	cmp    $0xffffffff,%eax
42b172:	74 25                	je     0x42b199
42b174:	8b 4e 08             	mov    0x8(%esi),%ecx
42b177:	8a 45 08             	mov    0x8(%ebp),%al
42b17a:	88 01                	mov    %al,(%ecx)
42b17c:	eb 16                	jmp    0x42b194
42b17e:	33 c0                	xor    %eax,%eax
42b180:	40                   	inc    %eax
42b181:	50                   	push   %eax
42b182:	89 45 0c             	mov    %eax,0xc(%ebp)
42b185:	8d 45 08             	lea    0x8(%ebp),%eax
42b188:	50                   	push   %eax
42b189:	57                   	push   %edi
42b18a:	e8 37 29 00 00       	call   0x42dac6
42b18f:	83 c4 0c             	add    $0xc,%esp
42b192:	8b d8                	mov    %eax,%ebx
42b194:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
42b197:	74 09                	je     0x42b1a2
42b199:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
42b19d:	83 c8 ff             	or     $0xffffffff,%eax
42b1a0:	eb 06                	jmp    0x42b1a8
42b1a2:	8b 45 08             	mov    0x8(%ebp),%eax
42b1a5:	0f b6 c0             	movzbl %al,%eax
42b1a8:	5b                   	pop    %ebx
42b1a9:	5f                   	pop    %edi
42b1aa:	5e                   	pop    %esi
42b1ab:	5d                   	pop    %ebp
42b1ac:	c3                   	ret
42b1ad:	55                   	push   %ebp
42b1ae:	8b ec                	mov    %esp,%ebp
42b1b0:	81 ec 88 04 00 00    	sub    $0x488,%esp
42b1b6:	a1 50 fd 4b 00       	mov    0x4bfd50,%eax
42b1bb:	33 c5                	xor    %ebp,%eax
42b1bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
42b1c0:	8b 45 08             	mov    0x8(%ebp),%eax
42b1c3:	8d 8d b0 fb ff ff    	lea    -0x450(%ebp),%ecx
42b1c9:	53                   	push   %ebx
42b1ca:	56                   	push   %esi
42b1cb:	89 85 d8 fb ff ff    	mov    %eax,-0x428(%ebp)
42b1d1:	8b 45 0c             	mov    0xc(%ebp),%eax
42b1d4:	57                   	push   %edi
42b1d5:	ff 75 10             	push   0x10(%ebp)
42b1d8:	8b 7d 14             	mov    0x14(%ebp),%edi
42b1db:	89 85 f8 fb ff ff    	mov    %eax,-0x408(%ebp)
42b1e1:	33 c0                	xor    %eax,%eax
42b1e3:	8b d8                	mov    %eax,%ebx
42b1e5:	89 bd f0 fb ff ff    	mov    %edi,-0x410(%ebp)
42b1eb:	89 85 a4 fb ff ff    	mov    %eax,-0x45c(%ebp)
42b1f1:	8b f0                	mov    %eax,%esi
42b1f3:	89 9d ec fb ff ff    	mov    %ebx,-0x414(%ebp)
42b1f9:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42b1ff:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
42b205:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
42b20b:	89 85 a8 fb ff ff    	mov    %eax,-0x458(%ebp)
42b211:	89 85 c0 fb ff ff    	mov    %eax,-0x440(%ebp)
42b217:	89 85 d4 fb ff ff    	mov    %eax,-0x42c(%ebp)
42b21d:	e8 93 7e ff ff       	call   0x4230b5
42b222:	e8 41 db ff ff       	call   0x428d68
42b227:	89 85 9c fb ff ff    	mov    %eax,-0x464(%ebp)
42b22d:	39 9d d8 fb ff ff    	cmp    %ebx,-0x428(%ebp)
42b233:	75 2a                	jne    0x42b25f
42b235:	e8 2e db ff ff       	call   0x428d68
42b23a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42b240:	e8 b1 dd ff ff       	call   0x428ff6
42b245:	38 9d bc fb ff ff    	cmp    %bl,-0x444(%ebp)
42b24b:	74 0a                	je     0x42b257
42b24d:	8b 85 b8 fb ff ff    	mov    -0x448(%ebp),%eax
42b253:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
42b257:	83 c8 ff             	or     $0xffffffff,%eax
42b25a:	e9 f5 0a 00 00       	jmp    0x42bd54
42b25f:	8b 95 f8 fb ff ff    	mov    -0x408(%ebp),%edx
42b265:	85 d2                	test   %edx,%edx
42b267:	74 cc                	je     0x42b235
42b269:	0f b7 12             	movzwl (%edx),%edx
42b26c:	33 c9                	xor    %ecx,%ecx
42b26e:	89 8d f4 fb ff ff    	mov    %ecx,-0x40c(%ebp)
42b274:	8b c1                	mov    %ecx,%eax
42b276:	89 85 e0 fb ff ff    	mov    %eax,-0x420(%ebp)
42b27c:	89 8d cc fb ff ff    	mov    %ecx,-0x434(%ebp)
42b282:	89 8d ac fb ff ff    	mov    %ecx,-0x454(%ebp)
42b288:	89 95 e4 fb ff ff    	mov    %edx,-0x41c(%ebp)
42b28e:	66 85 d2             	test   %dx,%dx
42b291:	0f 84 aa 0a 00 00    	je     0x42bd41
42b297:	c7 85 90 fb ff ff 58 	movl   $0x58,-0x470(%ebp)
42b29e:	00 00 00
42b2a1:	c7 85 8c fb ff ff 64 	movl   $0x64,-0x474(%ebp)
42b2a8:	00 00 00
42b2ab:	c7 85 88 fb ff ff 69 	movl   $0x69,-0x478(%ebp)
42b2b2:	00 00 00
42b2b5:	c7 85 98 fb ff ff 6f 	movl   $0x6f,-0x468(%ebp)
42b2bc:	00 00 00
42b2bf:	83 85 f8 fb ff ff 02 	addl   $0x2,-0x408(%ebp)
42b2c6:	85 c0                	test   %eax,%eax
42b2c8:	0f 88 73 0a 00 00    	js     0x42bd41
42b2ce:	6a 58                	push   $0x58
42b2d0:	8d 42 e0             	lea    -0x20(%edx),%eax
42b2d3:	5f                   	pop    %edi
42b2d4:	66 3b c7             	cmp    %di,%ax
42b2d7:	77 0f                	ja     0x42b2e8
42b2d9:	0f b7 c2             	movzwl %dx,%eax
42b2dc:	0f be 80 10 42 49 00 	movsbl 0x494210(%eax),%eax
42b2e3:	83 e0 0f             	and    $0xf,%eax
42b2e6:	eb 02                	jmp    0x42b2ea
42b2e8:	33 c0                	xor    %eax,%eax
42b2ea:	8b bd cc fb ff ff    	mov    -0x434(%ebp),%edi
42b2f0:	0f be bc c7 30 42 49 	movsbl 0x494230(%edi,%eax,8),%edi
42b2f7:	00
42b2f8:	8b c7                	mov    %edi,%eax
42b2fa:	89 bd cc fb ff ff    	mov    %edi,-0x434(%ebp)
42b300:	8b bd f0 fb ff ff    	mov    -0x410(%ebp),%edi
42b306:	c1 f8 04             	sar    $0x4,%eax
42b309:	89 85 cc fb ff ff    	mov    %eax,-0x434(%ebp)
42b30f:	83 f8 07             	cmp    $0x7,%eax
42b312:	0f 87 0b 0a 00 00    	ja     0x42bd23
42b318:	ff 24 85 91 bd 42 00 	jmp    *0x42bd91(,%eax,4)
42b31f:	33 c0                	xor    %eax,%eax
42b321:	83 8d e8 fb ff ff ff 	orl    $0xffffffff,-0x418(%ebp)
42b328:	8b d8                	mov    %eax,%ebx
42b32a:	89 85 a8 fb ff ff    	mov    %eax,-0x458(%ebp)
42b330:	89 85 c0 fb ff ff    	mov    %eax,-0x440(%ebp)
42b336:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42b33c:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
42b342:	89 9d ec fb ff ff    	mov    %ebx,-0x414(%ebp)
42b348:	89 85 d4 fb ff ff    	mov    %eax,-0x42c(%ebp)
42b34e:	e9 d0 09 00 00       	jmp    0x42bd23
42b353:	0f b7 c2             	movzwl %dx,%eax
42b356:	6a 20                	push   $0x20
42b358:	5a                   	pop    %edx
42b359:	2b c2                	sub    %edx,%eax
42b35b:	74 46                	je     0x42b3a3
42b35d:	83 e8 03             	sub    $0x3,%eax
42b360:	74 39                	je     0x42b39b
42b362:	83 e8 08             	sub    $0x8,%eax
42b365:	74 2f                	je     0x42b396
42b367:	48                   	dec    %eax
42b368:	48                   	dec    %eax
42b369:	74 1d                	je     0x42b388
42b36b:	83 e8 03             	sub    $0x3,%eax
42b36e:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
42b374:	0f 85 af 09 00 00    	jne    0x42bd29
42b37a:	83 cb 08             	or     $0x8,%ebx
42b37d:	89 9d ec fb ff ff    	mov    %ebx,-0x414(%ebp)
42b383:	e9 a1 09 00 00       	jmp    0x42bd29
42b388:	83 cb 04             	or     $0x4,%ebx
42b38b:	89 9d ec fb ff ff    	mov    %ebx,-0x414(%ebp)
42b391:	e9 8d 09 00 00       	jmp    0x42bd23
42b396:	83 cb 01             	or     $0x1,%ebx
42b399:	eb f0                	jmp    0x42b38b
42b39b:	81 cb 80 00 00 00    	or     $0x80,%ebx
42b3a1:	eb e8                	jmp    0x42b38b
42b3a3:	83 cb 02             	or     $0x2,%ebx
42b3a6:	eb e3                	jmp    0x42b38b
42b3a8:	6a 2a                	push   $0x2a
42b3aa:	58                   	pop    %eax
42b3ab:	66 3b d0             	cmp    %ax,%dx
42b3ae:	75 2f                	jne    0x42b3df
42b3b0:	8b 07                	mov    (%edi),%eax
42b3b2:	83 c7 04             	add    $0x4,%edi
42b3b5:	89 bd f0 fb ff ff    	mov    %edi,-0x410(%ebp)
42b3bb:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42b3c1:	85 c0                	test   %eax,%eax
42b3c3:	0f 89 5a 09 00 00    	jns    0x42bd23
42b3c9:	83 cb 04             	or     $0x4,%ebx
42b3cc:	f7 d8                	neg    %eax
42b3ce:	89 9d ec fb ff ff    	mov    %ebx,-0x414(%ebp)
42b3d4:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42b3da:	e9 44 09 00 00       	jmp    0x42bd23
42b3df:	6b 8d d0 fb ff ff 0a 	imul   $0xa,-0x430(%ebp),%ecx
42b3e6:	0f b7 c2             	movzwl %dx,%eax
42b3e9:	83 c1 d0             	add    $0xffffffd0,%ecx
42b3ec:	03 c1                	add    %ecx,%eax
42b3ee:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42b3f4:	e9 24 09 00 00       	jmp    0x42bd1d
42b3f9:	33 c0                	xor    %eax,%eax
42b3fb:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
42b401:	e9 1d 09 00 00       	jmp    0x42bd23
42b406:	6a 2a                	push   $0x2a
42b408:	58                   	pop    %eax
42b409:	66 3b d0             	cmp    %ax,%dx
42b40c:	75 2b                	jne    0x42b439
42b40e:	8b 07                	mov    (%edi),%eax
42b410:	83 c7 04             	add    $0x4,%edi
42b413:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
42b419:	85 c0                	test   %eax,%eax
42b41b:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
42b421:	89 bd f0 fb ff ff    	mov    %edi,-0x410(%ebp)
42b427:	0f 89 fc 08 00 00    	jns    0x42bd29
42b42d:	83 8d e8 fb ff ff ff 	orl    $0xffffffff,-0x418(%ebp)
42b434:	e9 f0 08 00 00       	jmp    0x42bd29
42b439:	6b 8d e8 fb ff ff 0a 	imul   $0xa,-0x418(%ebp),%ecx
42b440:	0f b7 c2             	movzwl %dx,%eax
42b443:	83 c1 d0             	add    $0xffffffd0,%ecx
42b446:	03 c1                	add    %ecx,%eax
42b448:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
42b44e:	e9 ca 08 00 00       	jmp    0x42bd1d
42b453:	0f b7 c2             	movzwl %dx,%eax
42b456:	83 f8 49             	cmp    $0x49,%eax
42b459:	74 57                	je     0x42b4b2
42b45b:	83 f8 68             	cmp    $0x68,%eax
42b45e:	74 48                	je     0x42b4a8
42b460:	6a 6c                	push   $0x6c
42b462:	5a                   	pop    %edx
42b463:	3b c2                	cmp    %edx,%eax
42b465:	74 1a                	je     0x42b481
42b467:	83 f8 77             	cmp    $0x77,%eax
42b46a:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
42b470:	0f 85 b3 08 00 00    	jne    0x42bd29
42b476:	81 cb 00 08 00 00    	or     $0x800,%ebx
42b47c:	e9 fc fe ff ff       	jmp    0x42b37d
42b481:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
42b487:	66 39 10             	cmp    %dx,(%eax)
42b48a:	75 14                	jne    0x42b4a0
42b48c:	83 c0 02             	add    $0x2,%eax
42b48f:	81 cb 00 10 00 00    	or     $0x1000,%ebx
42b495:	89 85 f8 fb ff ff    	mov    %eax,-0x408(%ebp)
42b49b:	e9 dd fe ff ff       	jmp    0x42b37d
42b4a0:	83 cb 10             	or     $0x10,%ebx
42b4a3:	e9 d5 fe ff ff       	jmp    0x42b37d
42b4a8:	6a 20                	push   $0x20
42b4aa:	58                   	pop    %eax
42b4ab:	0b d8                	or     %eax,%ebx
42b4ad:	e9 d9 fe ff ff       	jmp    0x42b38b
42b4b2:	8b 85 f8 fb ff ff    	mov    -0x408(%ebp),%eax
42b4b8:	0f b7 00             	movzwl (%eax),%eax
42b4bb:	83 f8 36             	cmp    $0x36,%eax
42b4be:	75 23                	jne    0x42b4e3
42b4c0:	8b bd f8 fb ff ff    	mov    -0x408(%ebp),%edi
42b4c6:	66 83 7f 02 34       	cmpw   $0x34,0x2(%edi)
42b4cb:	75 16                	jne    0x42b4e3
42b4cd:	8b c7                	mov    %edi,%eax
42b4cf:	83 c0 04             	add    $0x4,%eax
42b4d2:	81 cb 00 80 00 00    	or     $0x8000,%ebx
42b4d8:	89 85 f8 fb ff ff    	mov    %eax,-0x408(%ebp)
42b4de:	e9 9a fe ff ff       	jmp    0x42b37d
42b4e3:	83 f8 33             	cmp    $0x33,%eax
42b4e6:	75 23                	jne    0x42b50b
42b4e8:	8b bd f8 fb ff ff    	mov    -0x408(%ebp),%edi
42b4ee:	66 83 7f 02 32       	cmpw   $0x32,0x2(%edi)
42b4f3:	75 16                	jne    0x42b50b
42b4f5:	8b c7                	mov    %edi,%eax
42b4f7:	83 c0 04             	add    $0x4,%eax
42b4fa:	81 e3 ff 7f ff ff    	and    $0xffff7fff,%ebx
42b500:	89 85 f8 fb ff ff    	mov    %eax,-0x408(%ebp)
42b506:	e9 72 fe ff ff       	jmp    0x42b37d
42b50b:	66 3b 85 8c fb ff ff 	cmp    -0x474(%ebp),%ax
42b512:	0f 84 0b 08 00 00    	je     0x42bd23
42b518:	66 3b 85 88 fb ff ff 	cmp    -0x478(%ebp),%ax
42b51f:	0f 84 fe 07 00 00    	je     0x42bd23
42b525:	66 3b 85 98 fb ff ff 	cmp    -0x468(%ebp),%ax
42b52c:	0f 84 f1 07 00 00    	je     0x42bd23
42b532:	83 f8 75             	cmp    $0x75,%eax
42b535:	0f 84 e8 07 00 00    	je     0x42bd23
42b53b:	83 f8 78             	cmp    $0x78,%eax
42b53e:	0f 84 df 07 00 00    	je     0x42bd23
42b544:	66 3b 85 90 fb ff ff 	cmp    -0x470(%ebp),%ax
42b54b:	0f 84 d2 07 00 00    	je     0x42bd23
42b551:	33 c0                	xor    %eax,%eax
42b553:	89 85 cc fb ff ff    	mov    %eax,-0x434(%ebp)
42b559:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
42b55f:	c7 85 d4 fb ff ff 01 	movl   $0x1,-0x42c(%ebp)
42b566:	00 00 00
42b569:	50                   	push   %eax
42b56a:	ff b5 d8 fb ff ff    	push   -0x428(%ebp)
42b570:	52                   	push   %edx
42b571:	e8 3b 08 00 00       	call   0x42bdb1
42b576:	83 c4 0c             	add    $0xc,%esp
42b579:	e9 9f 07 00 00       	jmp    0x42bd1d
42b57e:	0f b7 c2             	movzwl %dx,%eax
42b581:	83 f8 64             	cmp    $0x64,%eax
42b584:	0f 8f 29 02 00 00    	jg     0x42b7b3
42b58a:	0f 84 b1 02 00 00    	je     0x42b841
42b590:	83 f8 53             	cmp    $0x53,%eax
42b593:	0f 8f 25 01 00 00    	jg     0x42b6be
42b599:	74 7d                	je     0x42b618
42b59b:	83 e8 41             	sub    $0x41,%eax
42b59e:	74 10                	je     0x42b5b0
42b5a0:	48                   	dec    %eax
42b5a1:	48                   	dec    %eax
42b5a2:	74 58                	je     0x42b5fc
42b5a4:	48                   	dec    %eax
42b5a5:	48                   	dec    %eax
42b5a6:	74 08                	je     0x42b5b0
42b5a8:	48                   	dec    %eax
42b5a9:	48                   	dec    %eax
42b5aa:	0f 85 9a 05 00 00    	jne    0x42bb4a
42b5b0:	6a 20                	push   $0x20
42b5b2:	58                   	pop    %eax
42b5b3:	03 d0                	add    %eax,%edx
42b5b5:	c7 85 a8 fb ff ff 01 	movl   $0x1,-0x458(%ebp)
42b5bc:	00 00 00
42b5bf:	89 95 e4 fb ff ff    	mov    %edx,-0x41c(%ebp)
42b5c5:	8b 85 e8 fb ff ff    	mov    -0x418(%ebp),%eax
42b5cb:	8d b5 fc fb ff ff    	lea    -0x404(%ebp),%esi