44a0fa:	83 ec 18             	sub    $0x18,%esp
44a0fd:	8d 45 f0             	lea    -0x10(%ebp),%eax
44a100:	56                   	push   %esi
44a101:	6a 00                	push   $0x0
44a103:	50                   	push   %eax
44a104:	e8 bf f5 ff ff       	call   0x4496c8
44a109:	59                   	pop    %ecx
44a10a:	59                   	pop    %ecx
44a10b:	6a 60                	push   $0x60
44a10d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44a110:	8b f0                	mov    %eax,%esi
44a112:	e8 ae cc ff ff       	call   0x446dc5
44a117:	56                   	push   %esi
44a118:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a11b:	51                   	push   %ecx
44a11c:	8b c8                	mov    %eax,%ecx
44a11e:	e8 39 d1 ff ff       	call   0x44725c
44a123:	6a 27                	push   $0x27
44a125:	ff 75 08             	push   0x8(%ebp)
44a128:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a12b:	e8 4e d1 ff ff       	call   0x44727e
44a130:	8b 45 08             	mov    0x8(%ebp),%eax
44a133:	5e                   	pop    %esi
44a134:	c9                   	leave
44a135:	c3                   	ret
44a136:	55                   	push   %ebp
44a137:	8b ec                	mov    %esp,%ebp
44a139:	53                   	push   %ebx
44a13a:	56                   	push   %esi
44a13b:	57                   	push   %edi
44a13c:	8b 7d 08             	mov    0x8(%ebp),%edi
44a13f:	8b d9                	mov    %ecx,%ebx
44a141:	83 c7 07             	add    $0x7,%edi
44a144:	83 e7 f8             	and    $0xfffffff8,%edi
44a147:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
44a14b:	74 10                	je     0x44a15d
44a14d:	8b 33                	mov    (%ebx),%esi
44a14f:	8b ce                	mov    %esi,%ecx
44a151:	57                   	push   %edi
44a152:	ff 15 54 43 49 00    	call   *0x494354
44a158:	ff d6                	call   *%esi
44a15a:	59                   	pop    %ecx
44a15b:	eb 55                	jmp    0x44a1b2
44a15d:	85 ff                	test   %edi,%edi
44a15f:	75 03                	jne    0x44a164
44a161:	6a 08                	push   $0x8
44a163:	5f                   	pop    %edi
44a164:	8b 73 10             	mov    0x10(%ebx),%esi
44a167:	3b f7                	cmp    %edi,%esi
44a169:	73 3a                	jae    0x44a1a5
44a16b:	be 00 10 00 00       	mov    $0x1000,%esi
44a170:	3b fe                	cmp    %esi,%edi
44a172:	77 45                	ja     0x44a1b9
44a174:	6a 01                	push   $0x1
44a176:	68 04 10 00 00       	push   $0x1004
44a17b:	b9 e8 b3 4b 00       	mov    $0x4bb3e8,%ecx
44a180:	e8 b1 ff ff ff       	call   0x44a136
44a185:	85 c0                	test   %eax,%eax
44a187:	74 05                	je     0x44a18e
44a189:	83 20 00             	andl   $0x0,(%eax)
44a18c:	eb 02                	jmp    0x44a190
44a18e:	33 c0                	xor    %eax,%eax
44a190:	85 c0                	test   %eax,%eax
44a192:	74 25                	je     0x44a1b9
44a194:	8b 4b 0c             	mov    0xc(%ebx),%ecx
44a197:	85 c9                	test   %ecx,%ecx
44a199:	74 04                	je     0x44a19f
44a19b:	89 01                	mov    %eax,(%ecx)
44a19d:	eb 03                	jmp    0x44a1a2
44a19f:	89 43 08             	mov    %eax,0x8(%ebx)
44a1a2:	89 43 0c             	mov    %eax,0xc(%ebx)
44a1a5:	2b f7                	sub    %edi,%esi
44a1a7:	89 73 10             	mov    %esi,0x10(%ebx)
44a1aa:	8b 43 0c             	mov    0xc(%ebx),%eax
44a1ad:	83 c0 04             	add    $0x4,%eax
44a1b0:	03 c6                	add    %esi,%eax
44a1b2:	5f                   	pop    %edi
44a1b3:	5e                   	pop    %esi
44a1b4:	5b                   	pop    %ebx
44a1b5:	5d                   	pop    %ebp
44a1b6:	c2 08 00             	ret    $0x8
44a1b9:	33 c0                	xor    %eax,%eax
44a1bb:	eb f5                	jmp    0x44a1b2
44a1bd:	55                   	push   %ebp
44a1be:	8b ec                	mov    %esp,%ebp
44a1c0:	a1 cc b3 4b 00       	mov    0x4bb3cc,%eax
44a1c5:	8a 08                	mov    (%eax),%cl
44a1c7:	84 c9                	test   %cl,%cl
44a1c9:	74 2b                	je     0x44a1f6
44a1cb:	80 f9 5f             	cmp    $0x5f,%cl
44a1ce:	75 26                	jne    0x44a1f6
44a1d0:	8a 48 01             	mov    0x1(%eax),%cl
44a1d3:	84 c9                	test   %cl,%cl
44a1d5:	74 1f                	je     0x44a1f6
44a1d7:	80 f9 45             	cmp    $0x45,%cl
44a1da:	75 1a                	jne    0x44a1f6
44a1dc:	8b 4d 08             	mov    0x8(%ebp),%ecx
44a1df:	83 c0 02             	add    $0x2,%eax
44a1e2:	68 c8 ba 49 00       	push   $0x49bac8
44a1e7:	a3 cc b3 4b 00       	mov    %eax,0x4bb3cc
44a1ec:	e8 41 cc ff ff       	call   0x446e32
44a1f1:	8b 45 08             	mov    0x8(%ebp),%eax
44a1f4:	5d                   	pop    %ebp
44a1f5:	c3                   	ret
44a1f6:	8b 45 08             	mov    0x8(%ebp),%eax
44a1f9:	83 20 00             	andl   $0x0,(%eax)
44a1fc:	83 60 04 00          	andl   $0x0,0x4(%eax)
44a200:	5d                   	pop    %ebp
44a201:	c3                   	ret
44a202:	8b 0d cc b3 4b 00    	mov    0x4bb3cc,%ecx
44a208:	8a 01                	mov    (%ecx),%al
44a20a:	84 c0                	test   %al,%al
44a20c:	74 52                	je     0x44a260
44a20e:	3c 30                	cmp    $0x30,%al
44a210:	7c 12                	jl     0x44a224
44a212:	3c 39                	cmp    $0x39,%al
44a214:	7f 0e                	jg     0x44a224
44a216:	0f be c0             	movsbl %al,%eax
44a219:	83 e8 2f             	sub    $0x2f,%eax
44a21c:	41                   	inc    %ecx
44a21d:	89 0d cc b3 4b 00    	mov    %ecx,0x4bb3cc
44a223:	c3                   	ret
44a224:	33 d2                	xor    %edx,%edx
44a226:	eb 20                	jmp    0x44a248
44a228:	84 c0                	test   %al,%al
44a22a:	74 34                	je     0x44a260
44a22c:	3c 41                	cmp    $0x41,%al
44a22e:	7c 29                	jl     0x44a259
44a230:	3c 50                	cmp    $0x50,%al
44a232:	7f 25                	jg     0x44a259
44a234:	c1 e2 04             	shl    $0x4,%edx
44a237:	0f be c0             	movsbl %al,%eax
44a23a:	83 c2 bf             	add    $0xffffffbf,%edx
44a23d:	03 d0                	add    %eax,%edx
44a23f:	41                   	inc    %ecx
44a240:	89 0d cc b3 4b 00    	mov    %ecx,0x4bb3cc
44a246:	8a 01                	mov    (%ecx),%al
44a248:	3c 40                	cmp    $0x40,%al
44a24a:	75 dc                	jne    0x44a228
44a24c:	8a 01                	mov    (%ecx),%al
44a24e:	41                   	inc    %ecx
44a24f:	89 0d cc b3 4b 00    	mov    %ecx,0x4bb3cc
44a255:	3c 40                	cmp    $0x40,%al
44a257:	74 04                	je     0x44a25d
44a259:	83 c8 ff             	or     $0xffffffff,%eax
44a25c:	c3                   	ret
44a25d:	8b c2                	mov    %edx,%eax
44a25f:	c3                   	ret
44a260:	33 c0                	xor    %eax,%eax
44a262:	c3                   	ret
44a263:	55                   	push   %ebp
44a264:	8b ec                	mov    %esp,%ebp
44a266:	83 ec 28             	sub    $0x28,%esp
44a269:	a1 cc b3 4b 00       	mov    0x4bb3cc,%eax
44a26e:	53                   	push   %ebx
44a26f:	56                   	push   %esi
44a270:	57                   	push   %edi
44a271:	8a 08                	mov    (%eax),%cl
44a273:	8d 70 01             	lea    0x1(%eax),%esi
44a276:	33 ff                	xor    %edi,%edi
44a278:	89 35 cc b3 4b 00    	mov    %esi,0x4bb3cc
44a27e:	89 7d f8             	mov    %edi,-0x8(%ebp)
44a281:	89 7d fc             	mov    %edi,-0x4(%ebp)
44a284:	89 7d e8             	mov    %edi,-0x18(%ebp)
44a287:	89 7d ec             	mov    %edi,-0x14(%ebp)
44a28a:	80 f9 41             	cmp    $0x41,%cl
44a28d:	0f 8f 83 01 00 00    	jg     0x44a416
44a293:	0f 84 d6 05 00 00    	je     0x44a86f
44a299:	84 c9                	test   %cl,%cl
44a29b:	0f 84 5b 01 00 00    	je     0x44a3fc
44a2a1:	80 f9 2f             	cmp    $0x2f,%cl
44a2a4:	0f 8e b1 05 00 00    	jle    0x44a85b
44a2aa:	80 f9 31             	cmp    $0x31,%cl
44a2ad:	7e 5d                	jle    0x44a30c
44a2af:	80 f9 39             	cmp    $0x39,%cl
44a2b2:	0f 8f a3 05 00 00    	jg     0x44a85b
44a2b8:	0f be 46 ff          	movsbl -0x1(%esi),%eax
44a2bc:	ff 34 85 38 b0 49 00 	push   0x49b038(,%eax,4)
44a2c3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a2c6:	e8 88 ce ff ff       	call   0x447153
44a2cb:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
44a2cf:	74 28                	je     0x44a2f9
44a2d1:	68 30 b3 49 00       	push   $0x49b330
44a2d6:	8d 4d d8             	lea    -0x28(%ebp),%ecx
44a2d9:	e8 54 cb ff ff       	call   0x446e32
44a2de:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a2e1:	51                   	push   %ecx
44a2e2:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44a2e5:	51                   	push   %ecx
44a2e6:	8b c8                	mov    %eax,%ecx
44a2e8:	e8 6f cf ff ff       	call   0x44725c
44a2ed:	8b 45 e0             	mov    -0x20(%ebp),%eax
44a2f0:	89 45 f8             	mov    %eax,-0x8(%ebp)
44a2f3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44a2f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
44a2f9:	8b 45 08             	mov    0x8(%ebp),%eax
44a2fc:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44a2ff:	89 08                	mov    %ecx,(%eax)
44a301:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44a304:	89 48 04             	mov    %ecx,0x4(%eax)
44a307:	5f                   	pop    %edi
44a308:	5e                   	pop    %esi
44a309:	5b                   	pop    %ebx
44a30a:	c9                   	leave
44a30b:	c3                   	ret
44a30c:	8b df                	mov    %edi,%ebx
44a30e:	89 7d f4             	mov    %edi,-0xc(%ebp)
44a311:	89 5d f0             	mov    %ebx,-0x10(%ebp)
44a314:	38 5d 0c             	cmp    %bl,0xc(%ebp)
44a317:	74 7c                	je     0x44a395
44a319:	8d 45 e8             	lea    -0x18(%ebp),%eax
44a31c:	50                   	push   %eax
44a31d:	e8 50 12 00 00       	call   0x44b572
44a322:	59                   	pop    %ecx
44a323:	6a 3c                	push   $0x3c
44a325:	8d 4d d8             	lea    -0x28(%ebp),%ecx
44a328:	8b f0                	mov    %eax,%esi
44a32a:	e8 96 ca ff ff       	call   0x446dc5
44a32f:	56                   	push   %esi
44a330:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44a333:	51                   	push   %ecx
44a334:	8b c8                	mov    %eax,%ecx
44a336:	e8 21 cf ff ff       	call   0x44725c
44a33b:	8d 45 e0             	lea    -0x20(%ebp),%eax
44a33e:	50                   	push   %eax
44a33f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44a342:	e8 bf cf ff ff       	call   0x447306
44a347:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44a34a:	e8 23 fd ff ff       	call   0x44a072
44a34f:	3c 3e                	cmp    $0x3e,%al
44a351:	75 0a                	jne    0x44a35d
44a353:	6a 20                	push   $0x20
44a355:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44a358:	e8 ea cf ff ff       	call   0x447347
44a35d:	6a 3e                	push   $0x3e
44a35f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
44a362:	e8 e0 cf ff ff       	call   0x447347
44a367:	8b 45 10             	mov    0x10(%ebp),%eax
44a36a:	85 c0                	test   %eax,%eax
44a36c:	74 03                	je     0x44a371
44a36e:	c6 00 01             	movb   $0x1,(%eax)
44a371:	8b 35 cc b3 4b 00    	mov    0x4bb3cc,%esi
44a377:	38 1e                	cmp    %bl,(%esi)
44a379:	75 10                	jne    0x44a38b
44a37b:	8b 45 08             	mov    0x8(%ebp),%eax
44a37e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
44a381:	89 08                	mov    %ecx,(%eax)
44a383:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44a386:	e9 79 ff ff ff       	jmp    0x44a304
44a38b:	8b 5d f0             	mov    -0x10(%ebp),%ebx
44a38e:	46                   	inc    %esi
44a38f:	89 35 cc b3 4b 00    	mov    %esi,0x4bb3cc
44a395:	57                   	push   %edi
44a396:	8d 45 d8             	lea    -0x28(%ebp),%eax
44a399:	57                   	push   %edi
44a39a:	50                   	push   %eax
44a39b:	e8 58 1f 00 00       	call   0x44c2f8
44a3a0:	83 c4 0c             	add    $0xc,%esp
44a3a3:	8b 08                	mov    (%eax),%ecx
44a3a5:	8b 40 04             	mov    0x4(%eax),%eax
44a3a8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
44a3ab:	89 45 fc             	mov    %eax,-0x4(%ebp)
44a3ae:	89 35 cc b3 4b 00    	mov    %esi,0x4bb3cc
44a3b4:	85 c9                	test   %ecx,%ecx
44a3b6:	74 2b                	je     0x44a3e3
44a3b8:	80 7e ff 31          	cmpb   $0x31,-0x1(%esi)
44a3bc:	75 25                	jne    0x44a3e3
44a3be:	6a 7e                	push   $0x7e
44a3c0:	8d 4d d8             	lea    -0x28(%ebp),%ecx
44a3c3:	e8 fd c9 ff ff       	call   0x446dc5
44a3c8:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a3cb:	51                   	push   %ecx
44a3cc:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44a3cf:	51                   	push   %ecx
44a3d0:	8b c8                	mov    %eax,%ecx
44a3d2:	e8 85 ce ff ff       	call   0x44725c
44a3d7:	8b 45 e8             	mov    -0x18(%ebp),%eax
44a3da:	89 45 f8             	mov    %eax,-0x8(%ebp)
44a3dd:	8b 45 ec             	mov    -0x14(%ebp),%eax
44a3e0:	89 45 fc             	mov    %eax,-0x4(%ebp)
44a3e3:	85 db                	test   %ebx,%ebx
44a3e5:	0f 84 0e ff ff ff    	je     0x44a2f9
44a3eb:	8d 45 f0             	lea    -0x10(%ebp),%eax
44a3ee:	50                   	push   %eax
44a3ef:	8d 4d f8             	lea    -0x8(%ebp),%ecx
44a3f2:	e8 0f cf ff ff       	call   0x447306
44a3f7:	e9 fd fe ff ff       	jmp    0x44a2f9
44a3fc:	8d 46 ff             	lea    -0x1(%esi),%eax
44a3ff:	8b 4d 08             	mov    0x8(%ebp),%ecx
44a402:	6a 01                	push   $0x1
44a404:	a3 cc b3 4b 00       	mov    %eax,0x4bb3cc
44a409:	e8 57 ca ff ff       	call   0x446e65
44a40e:	8b 45 08             	mov    0x8(%ebp),%eax
44a411:	e9 f1 fe ff ff       	jmp    0x44a307
44a416:	80 f9 42             	cmp    $0x42,%cl
44a419:	0f 84 4d 04 00 00    	je     0x44a86c
44a41f:	0f 8e 36 04 00 00    	jle    0x44a85b
44a425:	80 f9 5a             	cmp    $0x5a,%cl
44a428:	0f 8e 41 04 00 00    	jle    0x44a86f
44a42e:	80 f9 5f             	cmp    $0x5f,%cl
44a431:	0f 85 24 04 00 00    	jne    0x44a85b
44a437:	0f be 06             	movsbl (%esi),%eax
44a43a:	46                   	inc    %esi
44a43b:	89 35 cc b3 4b 00    	mov    %esi,0x4bb3cc
44a441:	83 f8 4f             	cmp    $0x4f,%eax
44a444:	0f 8f 07 01 00 00    	jg     0x44a551
44a44a:	83 f8 44             	cmp    $0x44,%eax
44a44d:	0f 8d e8 03 00 00    	jge    0x44a83b
44a453:	83 f8 39             	cmp    $0x39,%eax
44a456:	7f 6e                	jg     0x44a4c6
44a458:	74 40                	je     0x44a49a
44a45a:	85 c0                	test   %eax,%eax
44a45c:	74 9e                	je     0x44a3fc
44a45e:	83 f8 2f             	cmp    $0x2f,%eax
44a461:	0f 8e f4 03 00 00    	jle    0x44a85b
44a467:	83 f8 36             	cmp    $0x36,%eax
44a46a:	7e 1e                	jle    0x44a48a
44a46c:	83 f8 38             	cmp    $0x38,%eax
44a46f:	0f 8f e6 03 00 00    	jg     0x44a85b
44a475:	0f be 46 ff          	movsbl -0x1(%esi),%eax
44a479:	ff 34 85 c8 b0 49 00 	push   0x49b0c8(,%eax,4)
44a480:	8b 4d 08             	mov    0x8(%ebp),%ecx
44a483:	e8 aa c9 ff ff       	call   0x446e32
44a488:	eb 84                	jmp    0x44a40e
44a48a:	0f be 46 ff          	movsbl -0x1(%esi),%eax
44a48e:	ff 34 85 c8 b0 49 00 	push   0x49b0c8(,%eax,4)
44a495:	e9 29 fe ff ff       	jmp    0x44a2c3
44a49a:	0f be 46 ff          	movsbl -0x1(%esi),%eax
44a49e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44a4a1:	ff 34 85 c8 b0 49 00 	push   0x49b0c8(,%eax,4)
44a4a8:	e8 85 c9 ff ff       	call   0x446e32
44a4ad:	8b 55 ec             	mov    -0x14(%ebp),%edx
44a4b0:	81 ca 00 80 00 00    	or     $0x8000,%edx
44a4b6:	8b 45 08             	mov    0x8(%ebp),%eax
44a4b9:	8b 4d e8             	mov    -0x18(%ebp),%ecx
44a4bc:	89 08                	mov    %ecx,(%eax)
44a4be:	89 50 04             	mov    %edx,0x4(%eax)
44a4c1:	e9 41 fe ff ff       	jmp    0x44a307
44a4c6:	83 f8 3f             	cmp    $0x3f,%eax
44a4c9:	74 39                	je     0x44a504
44a4cb:	83 f8 40             	cmp    $0x40,%eax
44a4ce:	0f 8e 87 03 00 00    	jle    0x44a85b
44a4d4:	83 f8 42             	cmp    $0x42,%eax
44a4d7:	0f 8e 5e 03 00 00    	jle    0x44a83b
44a4dd:	83 f8 43             	cmp    $0x43,%eax
44a4e0:	0f 85 75 03 00 00    	jne    0x44a85b
44a4e6:	6a 01                	push   $0x1
44a4e8:	8d 45 e8             	lea    -0x18(%ebp),%eax
44a4eb:	68 f0 b3 49 00       	push   $0x49b3f0
44a4f0:	50                   	push   %eax