4bceab:	85 c0                	test   %eax,%eax
4bcead:	79 07                	jns    0x4bceb6
4bceaf:	b8 0a 00 00 00       	mov    $0xa,%eax
4bceb4:	eb 12                	jmp    0x4bcec8
4bceb6:	83 c8 01             	or     $0x1,%eax
4bceb9:	0f bd c0             	bsr    %eax,%eax
4bcebc:	89 45 cc             	mov    %eax,-0x34(%ebp)
4bcebf:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4bcec2:	83 c0 49             	add    $0x49,%eax
4bcec5:	c1 e8 06             	shr    $0x6,%eax
4bcec8:	43                   	inc    %ebx
4bcec9:	03 d8                	add    %eax,%ebx
4bcecb:	f7 c2 00 00 08 00    	test   $0x80000,%edx
4bced1:	74 03                	je     0x4bced6
4bced3:	83 c3 03             	add    $0x3,%ebx
4bced6:	8d 46 04             	lea    0x4(%esi),%eax
4bced9:	83 c6 18             	add    $0x18,%esi
4bcedc:	f6 00 01             	testb  $0x1,(%eax)
4bcedf:	74 12                	je     0x4bcef3
4bcee1:	56                   	push   %esi
4bcee2:	53                   	push   %ebx
4bcee3:	50                   	push   %eax
4bcee4:	e8 c7 25 fb ff       	call   0x46f4b0
4bcee9:	83 c4 0c             	add    $0xc,%esp
4bceec:	5f                   	pop    %edi
4bceed:	5e                   	pop    %esi
4bceee:	5b                   	pop    %ebx
4bceef:	8b e5                	mov    %ebp,%esp
4bcef1:	5d                   	pop    %ebp
4bcef2:	c3                   	ret
4bcef3:	5f                   	pop    %edi
4bcef4:	89 1e                	mov    %ebx,(%esi)
4bcef6:	8b c3                	mov    %ebx,%eax
4bcef8:	5e                   	pop    %esi
4bcef9:	5b                   	pop    %ebx
4bcefa:	8b e5                	mov    %ebp,%esp
4bcefc:	5d                   	pop    %ebp
4bcefd:	c3                   	ret
4bcefe:	cc                   	int3
4bceff:	cc                   	int3
4bcf00:	55                   	push   %ebp
4bcf01:	8b ec                	mov    %esp,%ebp
4bcf03:	81 ec 9c 00 00 00    	sub    $0x9c,%esp
4bcf09:	53                   	push   %ebx
4bcf0a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4bcf0d:	8b c1                	mov    %ecx,%eax
4bcf0f:	56                   	push   %esi
4bcf10:	57                   	push   %edi
4bcf11:	8b 7d 08             	mov    0x8(%ebp),%edi
4bcf14:	33 f6                	xor    %esi,%esi
4bcf16:	89 45 fc             	mov    %eax,-0x4(%ebp)
4bcf19:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4bcf1c:	eb 06                	jmp    0x4bcf24
4bcf1e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bcf21:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4bcf24:	3b 3b                	cmp    (%ebx),%edi
4bcf26:	72 2a                	jb     0x4bcf52
4bcf28:	8b cf                	mov    %edi,%ecx
4bcf2a:	2b 4b 04             	sub    0x4(%ebx),%ecx
4bcf2d:	3b 4b 10             	cmp    0x10(%ebx),%ecx
4bcf30:	0f 84 29 08 00 00    	je     0x4bd75f
4bcf36:	ff 73 48             	push   0x48(%ebx)
4bcf39:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4bcf3c:	51                   	push   %ecx
4bcf3d:	50                   	push   %eax
4bcf3e:	8b cb                	mov    %ebx,%ecx
4bcf40:	e8 eb 1f fa ff       	call   0x45ef30
4bcf45:	80 7d b8 00          	cmpb   $0x0,-0x48(%ebp)
4bcf49:	8b 7d b4             	mov    -0x4c(%ebp),%edi
4bcf4c:	0f 85 30 08 00 00    	jne    0x4bd782
4bcf52:	0f b6 1f             	movzbl (%edi),%ebx
4bcf55:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
4bcf5b:	73 03                	jae    0x4bcf60
4bcf5d:	47                   	inc    %edi
4bcf5e:	eb 2f                	jmp    0x4bcf8f
4bcf60:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
4bcf64:	83 c3 80             	add    $0xffffff80,%ebx
4bcf67:	8b c1                	mov    %ecx,%eax
4bcf69:	c1 e0 07             	shl    $0x7,%eax
4bcf6c:	03 d8                	add    %eax,%ebx
4bcf6e:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4bcf74:	73 05                	jae    0x4bcf7b
4bcf76:	83 c7 02             	add    $0x2,%edi
4bcf79:	eb 14                	jmp    0x4bcf8f
4bcf7b:	53                   	push   %ebx
4bcf7c:	8d 45 ac             	lea    -0x54(%ebp),%eax
4bcf7f:	57                   	push   %edi
4bcf80:	50                   	push   %eax
4bcf81:	e8 5a 2a fa ff       	call   0x45f9e0
4bcf86:	8b 5d b0             	mov    -0x50(%ebp),%ebx
4bcf89:	83 c4 0c             	add    $0xc,%esp
4bcf8c:	8b 7d ac             	mov    -0x54(%ebp),%edi
4bcf8f:	85 ff                	test   %edi,%edi
4bcf91:	0f 84 0e 08 00 00    	je     0x4bd7a5
4bcf97:	8b c3                	mov    %ebx,%eax
4bcf99:	c1 e8 03             	shr    $0x3,%eax
4bcf9c:	3d e7 03 00 00       	cmp    $0x3e7,%eax
4bcfa1:	0f 87 3d 07 00 00    	ja     0x4bd6e4
4bcfa7:	0f 84 99 06 00 00    	je     0x4bd646
4bcfad:	48                   	dec    %eax
4bcfae:	83 f8 31             	cmp    $0x31,%eax
4bcfb1:	0f 87 2d 07 00 00    	ja     0x4bd6e4
4bcfb7:	0f b6 80 10 d8 4b 00 	movzbl 0x4bd810(%eax),%eax
4bcfbe:	ff 24 85 b8 d7 4b 00 	jmp    *0x4bd7b8(,%eax,4)
4bcfc5:	80 fb 0a             	cmp    $0xa,%bl
4bcfc8:	0f 85 16 07 00 00    	jne    0x4bd6e4
4bcfce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4bcfd1:	c6 45 e8 00          	movb   $0x0,-0x18(%ebp)
4bcfd5:	83 49 14 01          	orl    $0x1,0x14(%ecx)
4bcfd9:	8b 51 04             	mov    0x4(%ecx),%edx
4bcfdc:	f6 c2 03             	test   $0x3,%dl
4bcfdf:	75 05                	jne    0x4bcfe6
4bcfe1:	83 e2 fc             	and    $0xfffffffc,%edx
4bcfe4:	eb 11                	jmp    0x4bcff7
4bcfe6:	8b c2                	mov    %edx,%eax
4bcfe8:	d1 e8                	shr    $1,%eax
4bcfea:	a8 01                	test   $0x1,%al
4bcfec:	74 04                	je     0x4bcff2
4bcfee:	33 d2                	xor    %edx,%edx
4bcff0:	eb 05                	jmp    0x4bcff7
4bcff2:	83 e2 fc             	and    $0xfffffffc,%edx
4bcff5:	8b 12                	mov    (%edx),%edx
4bcff7:	52                   	push   %edx
4bcff8:	ff 75 e8             	push   -0x18(%ebp)
4bcffb:	83 c1 3c             	add    $0x3c,%ecx
4bcffe:	e8 2d e9 f9 ff       	call   0x45b930
4bd003:	8b 5d f8             	mov    -0x8(%ebp),%ebx
4bd006:	53                   	push   %ebx
4bd007:	57                   	push   %edi
4bd008:	50                   	push   %eax
4bd009:	e8 e2 20 fa ff       	call   0x45f0f0
4bd00e:	8b f8                	mov    %eax,%edi
4bd010:	83 c4 0c             	add    $0xc,%esp
4bd013:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd016:	85 ff                	test   %edi,%edi
4bd018:	0f 84 8a 07 00 00    	je     0x4bd7a8
4bd01e:	e9 01 ff ff ff       	jmp    0x4bcf24
4bd023:	80 fb 42             	cmp    $0x42,%bl
4bd026:	0f 85 b8 06 00 00    	jne    0x4bd6e4
4bd02c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4bd02f:	c6 45 e4 00          	movb   $0x0,-0x1c(%ebp)
4bd033:	83 49 14 02          	orl    $0x2,0x14(%ecx)
4bd037:	8b 51 04             	mov    0x4(%ecx),%edx
4bd03a:	f6 c2 03             	test   $0x3,%dl
4bd03d:	75 0c                	jne    0x4bd04b
4bd03f:	83 e2 fc             	and    $0xfffffffc,%edx
4bd042:	83 c1 40             	add    $0x40,%ecx
4bd045:	52                   	push   %edx
4bd046:	ff 75 e4             	push   -0x1c(%ebp)
4bd049:	eb b3                	jmp    0x4bcffe
4bd04b:	8b c2                	mov    %edx,%eax
4bd04d:	d1 e8                	shr    $1,%eax
4bd04f:	a8 01                	test   $0x1,%al
4bd051:	74 0b                	je     0x4bd05e
4bd053:	33 d2                	xor    %edx,%edx
4bd055:	83 c1 40             	add    $0x40,%ecx
4bd058:	52                   	push   %edx
4bd059:	ff 75 e4             	push   -0x1c(%ebp)
4bd05c:	eb a0                	jmp    0x4bcffe
4bd05e:	83 e2 fc             	and    $0xfffffffc,%edx
4bd061:	83 c1 40             	add    $0x40,%ecx
4bd064:	8b 12                	mov    (%edx),%edx
4bd066:	52                   	push   %edx
4bd067:	ff 75 e4             	push   -0x1c(%ebp)
4bd06a:	eb 92                	jmp    0x4bcffe
4bd06c:	80 fb 48             	cmp    $0x48,%bl
4bd06f:	0f 85 6f 06 00 00    	jne    0x4bd6e4
4bd075:	8d 45 bc             	lea    -0x44(%ebp),%eax
4bd078:	50                   	push   %eax
4bd079:	57                   	push   %edi
4bd07a:	e8 01 3b f9 ff       	call   0x450b80
4bd07f:	8b f8                	mov    %eax,%edi
4bd081:	83 c4 08             	add    $0x8,%esp
4bd084:	85 ff                	test   %edi,%edi
4bd086:	0f 84 19 07 00 00    	je     0x4bd7a5
4bd08c:	8b 4d bc             	mov    -0x44(%ebp),%ecx
4bd08f:	8b c1                	mov    %ecx,%eax
4bd091:	83 e8 01             	sub    $0x1,%eax
4bd094:	74 4a                	je     0x4bd0e0
4bd096:	83 e8 01             	sub    $0x1,%eax
4bd099:	74 45                	je     0x4bd0e0
4bd09b:	83 e8 01             	sub    $0x1,%eax
4bd09e:	74 40                	je     0x4bd0e0
4bd0a0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4bd0a3:	83 c1 04             	add    $0x4,%ecx
4bd0a6:	f6 01 01             	testb  $0x1,(%ecx)
4bd0a9:	74 1c                	je     0x4bd0c7
4bd0ab:	8b 01                	mov    (%ecx),%eax
4bd0ad:	ff 75 c0             	push   -0x40(%ebp)
4bd0b0:	83 e0 fc             	and    $0xfffffffc,%eax
4bd0b3:	ff 75 bc             	push   -0x44(%ebp)
4bd0b6:	83 c0 04             	add    $0x4,%eax
4bd0b9:	6a 09                	push   $0x9
4bd0bb:	8b c8                	mov    %eax,%ecx
4bd0bd:	e8 5e 36 fa ff       	call   0x460720
4bd0c2:	e9 57 fe ff ff       	jmp    0x4bcf1e
4bd0c7:	e8 64 3b f9 ff       	call   0x450c30
4bd0cc:	ff 75 c0             	push   -0x40(%ebp)
4bd0cf:	8b c8                	mov    %eax,%ecx
4bd0d1:	ff 75 bc             	push   -0x44(%ebp)
4bd0d4:	6a 09                	push   $0x9
4bd0d6:	e8 45 36 fa ff       	call   0x460720
4bd0db:	e9 3e fe ff ff       	jmp    0x4bcf1e
4bd0e0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd0e3:	81 48 14 00 00 04 00 	orl    $0x40000,0x14(%eax)
4bd0ea:	89 48 6c             	mov    %ecx,0x6c(%eax)
4bd0ed:	e9 2f fe ff ff       	jmp    0x4bcf21
4bd0f2:	80 fb 50             	cmp    $0x50,%bl
4bd0f5:	0f 85 e9 05 00 00    	jne    0x4bd6e4
4bd0fb:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4bd0fe:	81 ce 00 04 00 00    	or     $0x400,%esi
4bd104:	50                   	push   %eax
4bd105:	57                   	push   %edi
4bd106:	e8 75 3a f9 ff       	call   0x450b80
4bd10b:	8b f8                	mov    %eax,%edi
4bd10d:	83 c4 08             	add    $0x8,%esp
4bd110:	8b 45 a4             	mov    -0x5c(%ebp),%eax
4bd113:	0b 45 a8             	or     -0x58(%ebp),%eax
4bd116:	74 04                	je     0x4bd11c
4bd118:	b1 01                	mov    $0x1,%cl
4bd11a:	eb 02                	jmp    0x4bd11e
4bd11c:	32 c9                	xor    %cl,%cl
4bd11e:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd121:	88 48 64             	mov    %cl,0x64(%eax)
4bd124:	85 ff                	test   %edi,%edi
4bd126:	0f 84 7c 06 00 00    	je     0x4bd7a8
4bd12c:	e9 f0 fd ff ff       	jmp    0x4bcf21
4bd131:	80 fb 5a             	cmp    $0x5a,%bl
4bd134:	0f 85 aa 05 00 00    	jne    0x4bd6e4
4bd13a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4bd13d:	c6 45 e0 00          	movb   $0x0,-0x20(%ebp)
4bd141:	83 49 14 04          	orl    $0x4,0x14(%ecx)
4bd145:	8b 51 04             	mov    0x4(%ecx),%edx
4bd148:	f6 c2 03             	test   $0x3,%dl
4bd14b:	75 0f                	jne    0x4bd15c
4bd14d:	83 e2 fc             	and    $0xfffffffc,%edx
4bd150:	83 c1 44             	add    $0x44,%ecx
4bd153:	52                   	push   %edx
4bd154:	ff 75 e0             	push   -0x20(%ebp)
4bd157:	e9 a2 fe ff ff       	jmp    0x4bcffe
4bd15c:	8b c2                	mov    %edx,%eax
4bd15e:	d1 e8                	shr    $1,%eax
4bd160:	a8 01                	test   $0x1,%al
4bd162:	74 0e                	je     0x4bd172
4bd164:	33 d2                	xor    %edx,%edx
4bd166:	83 c1 44             	add    $0x44,%ecx
4bd169:	52                   	push   %edx
4bd16a:	ff 75 e0             	push   -0x20(%ebp)
4bd16d:	e9 8c fe ff ff       	jmp    0x4bcffe
4bd172:	83 e2 fc             	and    $0xfffffffc,%edx
4bd175:	83 c1 44             	add    $0x44,%ecx
4bd178:	8b 12                	mov    (%edx),%edx
4bd17a:	52                   	push   %edx
4bd17b:	ff 75 e0             	push   -0x20(%ebp)
4bd17e:	e9 7b fe ff ff       	jmp    0x4bcffe
4bd183:	80 fb 80             	cmp    $0x80,%bl
4bd186:	0f 85 58 05 00 00    	jne    0x4bd6e4
4bd18c:	8d 45 9c             	lea    -0x64(%ebp),%eax
4bd18f:	81 ce 00 20 00 00    	or     $0x2000,%esi
4bd195:	50                   	push   %eax
4bd196:	57                   	push   %edi
4bd197:	e8 e4 39 f9 ff       	call   0x450b80
4bd19c:	8b f8                	mov    %eax,%edi
4bd19e:	83 c4 08             	add    $0x8,%esp
4bd1a1:	8b 45 9c             	mov    -0x64(%ebp),%eax
4bd1a4:	0b 45 a0             	or     -0x60(%ebp),%eax
4bd1a7:	74 04                	je     0x4bd1ad
4bd1a9:	b1 01                	mov    $0x1,%cl
4bd1ab:	eb 02                	jmp    0x4bd1af
4bd1ad:	32 c9                	xor    %cl,%cl
4bd1af:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd1b2:	88 48 67             	mov    %cl,0x67(%eax)
4bd1b5:	85 ff                	test   %edi,%edi
4bd1b7:	0f 84 eb 05 00 00    	je     0x4bd7a8
4bd1bd:	e9 5f fd ff ff       	jmp    0x4bcf21
4bd1c2:	80 fb 88             	cmp    $0x88,%bl
4bd1c5:	0f 85 19 05 00 00    	jne    0x4bd6e4
4bd1cb:	8d 45 94             	lea    -0x6c(%ebp),%eax
4bd1ce:	81 ce 00 40 00 00    	or     $0x4000,%esi
4bd1d4:	50                   	push   %eax
4bd1d5:	57                   	push   %edi
4bd1d6:	e8 a5 39 f9 ff       	call   0x450b80
4bd1db:	8b f8                	mov    %eax,%edi
4bd1dd:	83 c4 08             	add    $0x8,%esp
4bd1e0:	8b 45 94             	mov    -0x6c(%ebp),%eax
4bd1e3:	0b 45 98             	or     -0x68(%ebp),%eax
4bd1e6:	74 04                	je     0x4bd1ec
4bd1e8:	b1 01                	mov    $0x1,%cl
4bd1ea:	eb 02                	jmp    0x4bd1ee
4bd1ec:	32 c9                	xor    %cl,%cl
4bd1ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd1f1:	88 48 68             	mov    %cl,0x68(%eax)
4bd1f4:	85 ff                	test   %edi,%edi
4bd1f6:	0f 84 ac 05 00 00    	je     0x4bd7a8
4bd1fc:	e9 20 fd ff ff       	jmp    0x4bcf21
4bd201:	80 fb 90             	cmp    $0x90,%bl
4bd204:	0f 85 da 04 00 00    	jne    0x4bd6e4
4bd20a:	8d 45 8c             	lea    -0x74(%ebp),%eax
4bd20d:	81 ce 00 80 00 00    	or     $0x8000,%esi
4bd213:	50                   	push   %eax
4bd214:	57                   	push   %edi
4bd215:	e8 66 39 f9 ff       	call   0x450b80
4bd21a:	8b f8                	mov    %eax,%edi
4bd21c:	83 c4 08             	add    $0x8,%esp
4bd21f:	8b 45 8c             	mov    -0x74(%ebp),%eax
4bd222:	0b 45 90             	or     -0x70(%ebp),%eax
4bd225:	74 04                	je     0x4bd22b
4bd227:	b1 01                	mov    $0x1,%cl
4bd229:	eb 02                	jmp    0x4bd22d
4bd22b:	32 c9                	xor    %cl,%cl
4bd22d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd230:	88 48 69             	mov    %cl,0x69(%eax)
4bd233:	85 ff                	test   %edi,%edi
4bd235:	0f 84 6d 05 00 00    	je     0x4bd7a8
4bd23b:	e9 e1 fc ff ff       	jmp    0x4bcf21
4bd240:	80 fb a0             	cmp    $0xa0,%bl
4bd243:	0f 85 9b 04 00 00    	jne    0x4bd6e4
4bd249:	8d 45 84             	lea    -0x7c(%ebp),%eax
4bd24c:	81 ce 00 08 00 00    	or     $0x800,%esi
4bd252:	50                   	push   %eax
4bd253:	57                   	push   %edi
4bd254:	e8 27 39 f9 ff       	call   0x450b80
4bd259:	8b f8                	mov    %eax,%edi
4bd25b:	83 c4 08             	add    $0x8,%esp
4bd25e:	8b 45 84             	mov    -0x7c(%ebp),%eax
4bd261:	0b 45 88             	or     -0x78(%ebp),%eax
4bd264:	74 04                	je     0x4bd26a
4bd266:	b1 01                	mov    $0x1,%cl
4bd268:	eb 02                	jmp    0x4bd26c
4bd26a:	32 c9                	xor    %cl,%cl
4bd26c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4bd26f:	88 48 65             	mov    %cl,0x65(%eax)
4bd272:	85 ff                	test   %edi,%edi
4bd274:	0f 84 2e 05 00 00    	je     0x4bd7a8
4bd27a:	e9 a2 fc ff ff       	jmp    0x4bcf21
4bd27f:	80 fb b8             	cmp    $0xb8,%bl
4bd282:	0f 85 5c 04 00 00    	jne    0x4bd6e4
4bd288:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
4bd28e:	81 ce 00 00 02 00    	or     $0x20000,%esi
4bd294:	50                   	push   %eax
4bd295:	57                   	push   %edi
4bd296:	e8 e5 38 f9 ff       	call   0x450b80
4bd29b:	8b f8                	mov    %eax,%edi
4bd29d:	83 c4 08             	add    $0x8,%esp
4bd2a0:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
4bd2a6:	0b 45 80             	or     -0x80(%ebp),%eax
4bd2a9:	74 04                	je     0x4bd2af
4bd2ab:	b1 01                	mov    $0x1,%cl
4bd2ad:	eb 02                	jmp    0x4bd2b1
4bd2af:	32 c9                	xor    %cl,%cl