460f74:	5e                   	pop    %esi
460f75:	8b e5                	mov    %ebp,%esp
460f77:	5d                   	pop    %ebp
460f78:	c2 08 00             	ret    $0x8
460f7b:	55                   	push   %ebp
460f7c:	8b ec                	mov    %esp,%ebp
460f7e:	51                   	push   %ecx
460f7f:	8b 45 08             	mov    0x8(%ebp),%eax
460f82:	53                   	push   %ebx
460f83:	57                   	push   %edi
460f84:	0f b6 f8             	movzbl %al,%edi
460f87:	57                   	push   %edi
460f88:	89 4d fc             	mov    %ecx,-0x4(%ebp)
460f8b:	ff 15 fc f5 48 00    	call   *0x48f5fc
460f91:	66 8b d8             	mov    %ax,%bx
460f94:	80 e3 01             	and    $0x1,%bl
460f97:	38 5d 0c             	cmp    %bl,0xc(%ebp)
460f9a:	74 40                	je     0x460fdc
460f9c:	56                   	push   %esi
460f9d:	8b 35 8c f6 48 00    	mov    0x48f68c,%esi
460fa3:	51                   	push   %ecx
460fa4:	6a 00                	push   $0x0
460fa6:	6a 00                	push   $0x0
460fa8:	57                   	push   %edi
460fa9:	ff d6                	call   *%esi
460fab:	8b 4d fc             	mov    -0x4(%ebp),%ecx
460fae:	50                   	push   %eax
460faf:	ff 75 08             	push   0x8(%ebp)
460fb2:	e8 20 08 00 00       	call   0x4617d7
460fb7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
460fba:	e8 3f f2 ff ff       	call   0x4601fe
460fbf:	51                   	push   %ecx
460fc0:	6a 02                	push   $0x2
460fc2:	6a 00                	push   $0x0
460fc4:	57                   	push   %edi
460fc5:	ff d6                	call   *%esi
460fc7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
460fca:	50                   	push   %eax
460fcb:	ff 75 08             	push   0x8(%ebp)
460fce:	e8 04 08 00 00       	call   0x4617d7
460fd3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
460fd6:	e8 0a f2 ff ff       	call   0x4601e5
460fdb:	5e                   	pop    %esi
460fdc:	5f                   	pop    %edi
460fdd:	8a c3                	mov    %bl,%al
460fdf:	5b                   	pop    %ebx
460fe0:	8b e5                	mov    %ebp,%esp
460fe2:	5d                   	pop    %ebp
460fe3:	c2 08 00             	ret    $0x8
460fe6:	55                   	push   %ebp
460fe7:	8b ec                	mov    %esp,%ebp
460fe9:	81 ec 20 01 00 00    	sub    $0x120,%esp
460fef:	53                   	push   %ebx
460ff0:	56                   	push   %esi
460ff1:	57                   	push   %edi
460ff2:	8b 7d 08             	mov    0x8(%ebp),%edi
460ff5:	8b f1                	mov    %ecx,%esi
460ff7:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
460ffb:	8a 1f                	mov    (%edi),%bl
460ffd:	8a 7f 07             	mov    0x7(%edi),%bh
461000:	0f b7 47 08          	movzwl 0x8(%edi),%eax
461004:	88 5d fc             	mov    %bl,-0x4(%ebp)
461007:	88 7d 08             	mov    %bh,0x8(%ebp)
46100a:	0f 84 b1 00 00 00    	je     0x4610c1
461010:	80 fb 14             	cmp    $0x14,%bl
461013:	0f 84 a8 00 00 00    	je     0x4610c1
461019:	80 fb 90             	cmp    $0x90,%bl
46101c:	0f 84 9f 00 00 00    	je     0x4610c1
461022:	80 fb 91             	cmp    $0x91,%bl
461025:	0f 84 96 00 00 00    	je     0x4610c1
46102b:	80 fb ff             	cmp    $0xff,%bl
46102e:	74 7e                	je     0x4610ae
461030:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
461036:	50                   	push   %eax
461037:	ff 15 f8 f5 48 00    	call   *0x48f5f8
46103d:	85 c0                	test   %eax,%eax
46103f:	74 18                	je     0x461059
461041:	0f b6 c3             	movzbl %bl,%eax
461044:	80 8c 05 e0 fe ff ff 	orb    $0x80,-0x120(%ebp,%eax,1)
46104b:	80
46104c:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
461052:	50                   	push   %eax
461053:	ff 15 f4 f5 48 00    	call   *0x48f5f4
461059:	0f b6 d7             	movzbl %bh,%edx
46105c:	8b cf                	mov    %edi,%ecx
46105e:	c1 e2 10             	shl    $0x10,%edx
461061:	83 ca 01             	or     $0x1,%edx
461064:	e8 c5 f3 ff ff       	call   0x46042e
461069:	3c 01                	cmp    $0x1,%al
46106b:	75 06                	jne    0x461073
46106d:	81 ca 00 00 00 01    	or     $0x1000000,%edx
461073:	80 7e 17 00          	cmpb   $0x0,0x17(%esi)
461077:	75 0b                	jne    0x461084
461079:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
46107d:	75 05                	jne    0x461084
46107f:	80 fb 12             	cmp    $0x12,%bl
461082:	75 1e                	jne    0x4610a2
461084:	80 7e 16 00          	cmpb   $0x0,0x16(%esi)
461088:	75 18                	jne    0x4610a2
46108a:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
46108e:	75 12                	jne    0x4610a2
461090:	81 ca 00 00 00 20    	or     $0x20000000,%edx
461096:	0f b6 c3             	movzbl %bl,%eax
461099:	52                   	push   %edx
46109a:	50                   	push   %eax
46109b:	68 04 01 00 00       	push   $0x104
4610a0:	eb 14                	jmp    0x4610b6
4610a2:	52                   	push   %edx
4610a3:	0f b6 c3             	movzbl %bl,%eax
4610a6:	50                   	push   %eax
4610a7:	68 00 01 00 00       	push   $0x100
4610ac:	eb 08                	jmp    0x4610b6
4610ae:	6a 01                	push   $0x1
4610b0:	50                   	push   %eax
4610b1:	68 02 01 00 00       	push   $0x102
4610b6:	ff 76 20             	push   0x20(%esi)
4610b9:	ff 15 90 f6 48 00    	call   *0x48f690
4610bf:	eb 50                	jmp    0x461111
4610c1:	80 fb ff             	cmp    $0xff,%bl
4610c4:	74 21                	je     0x4610e7
4610c6:	8b cf                	mov    %edi,%ecx
4610c8:	e8 61 f3 ff ff       	call   0x46042e
4610cd:	51                   	push   %ecx
4610ce:	8b ce                	mov    %esi,%ecx
4610d0:	3c 01                	cmp    $0x1,%al
4610d2:	75 04                	jne    0x4610d8
4610d4:	6a 01                	push   $0x1
4610d6:	eb 02                	jmp    0x4610da
4610d8:	6a 00                	push   $0x0
4610da:	ff 75 08             	push   0x8(%ebp)
4610dd:	ff 75 fc             	push   -0x4(%ebp)
4610e0:	e8 f2 06 00 00       	call   0x4617d7
4610e5:	eb 2a                	jmp    0x461111
4610e7:	66 89 45 e6          	mov    %ax,-0x1a(%ebp)
4610eb:	33 d2                	xor    %edx,%edx
4610ed:	6a 1c                	push   $0x1c
4610ef:	8d 45 e0             	lea    -0x20(%ebp),%eax
4610f2:	c7 45 e8 04 00 00 00 	movl   $0x4,-0x18(%ebp)
4610f9:	42                   	inc    %edx
4610fa:	33 c9                	xor    %ecx,%ecx
4610fc:	21 4d ec             	and    %ecx,-0x14(%ebp)
4610ff:	21 4d f0             	and    %ecx,-0x10(%ebp)
461102:	50                   	push   %eax
461103:	52                   	push   %edx
461104:	89 55 e0             	mov    %edx,-0x20(%ebp)
461107:	66 89 4d e4          	mov    %cx,-0x1c(%ebp)
46110b:	ff 15 ec f5 48 00    	call   *0x48f5ec
461111:	8b ce                	mov    %esi,%ecx
461113:	e8 e6 f0 ff ff       	call   0x4601fe
461118:	5f                   	pop    %edi
461119:	5e                   	pop    %esi
46111a:	5b                   	pop    %ebx
46111b:	8b e5                	mov    %ebp,%esp
46111d:	5d                   	pop    %ebp
46111e:	c2 04 00             	ret    $0x4
461121:	55                   	push   %ebp
461122:	8b ec                	mov    %esp,%ebp
461124:	81 ec 20 01 00 00    	sub    $0x120,%esp
46112a:	53                   	push   %ebx
46112b:	56                   	push   %esi
46112c:	57                   	push   %edi
46112d:	8b 7d 08             	mov    0x8(%ebp),%edi
461130:	8b f1                	mov    %ecx,%esi
461132:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
461136:	8a 1f                	mov    (%edi),%bl
461138:	8a 7f 07             	mov    0x7(%edi),%bh
46113b:	0f b7 47 08          	movzwl 0x8(%edi),%eax
46113f:	88 5d fc             	mov    %bl,-0x4(%ebp)
461142:	88 7d 08             	mov    %bh,0x8(%ebp)
461145:	0f 84 ae 00 00 00    	je     0x4611f9
46114b:	80 fb 14             	cmp    $0x14,%bl
46114e:	0f 84 a5 00 00 00    	je     0x4611f9
461154:	80 fb 90             	cmp    $0x90,%bl
461157:	0f 84 9c 00 00 00    	je     0x4611f9
46115d:	80 fb 91             	cmp    $0x91,%bl
461160:	0f 84 93 00 00 00    	je     0x4611f9
461166:	80 fb ff             	cmp    $0xff,%bl
461169:	0f 84 da 00 00 00    	je     0x461249
46116f:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
461175:	50                   	push   %eax
461176:	ff 15 f8 f5 48 00    	call   *0x48f5f8
46117c:	85 c0                	test   %eax,%eax
46117e:	74 18                	je     0x461198
461180:	0f b6 c3             	movzbl %bl,%eax
461183:	80 b4 05 e0 fe ff ff 	xorb   $0x80,-0x120(%ebp,%eax,1)
46118a:	80
46118b:	8d 85 e0 fe ff ff    	lea    -0x120(%ebp),%eax
461191:	50                   	push   %eax
461192:	ff 15 f4 f5 48 00    	call   *0x48f5f4
461198:	0f b6 d7             	movzbl %bh,%edx
46119b:	8b cf                	mov    %edi,%ecx
46119d:	c1 e2 10             	shl    $0x10,%edx
4611a0:	81 ca 01 00 00 c0    	or     $0xc0000001,%edx
4611a6:	e8 83 f2 ff ff       	call   0x46042e
4611ab:	3c 01                	cmp    $0x1,%al
4611ad:	75 06                	jne    0x4611b5
4611af:	81 ca 00 00 00 01    	or     $0x1000000,%edx
4611b5:	80 7e 17 00          	cmpb   $0x0,0x17(%esi)
4611b9:	75 0b                	jne    0x4611c6
4611bb:	80 7e 1d 00          	cmpb   $0x0,0x1d(%esi)
4611bf:	75 05                	jne    0x4611c6
4611c1:	80 fb 12             	cmp    $0x12,%bl
4611c4:	75 1e                	jne    0x4611e4
4611c6:	80 7e 16 00          	cmpb   $0x0,0x16(%esi)
4611ca:	75 18                	jne    0x4611e4
4611cc:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
4611d0:	75 12                	jne    0x4611e4
4611d2:	81 ca 00 00 00 20    	or     $0x20000000,%edx
4611d8:	0f b6 c3             	movzbl %bl,%eax
4611db:	52                   	push   %edx
4611dc:	50                   	push   %eax
4611dd:	68 05 01 00 00       	push   $0x105
4611e2:	eb 0a                	jmp    0x4611ee
4611e4:	52                   	push   %edx
4611e5:	0f b6 c3             	movzbl %bl,%eax
4611e8:	50                   	push   %eax
4611e9:	68 01 01 00 00       	push   $0x101
4611ee:	ff 76 20             	push   0x20(%esi)
4611f1:	ff 15 90 f6 48 00    	call   *0x48f690
4611f7:	eb 50                	jmp    0x461249
4611f9:	80 fb ff             	cmp    $0xff,%bl
4611fc:	74 21                	je     0x46121f
4611fe:	8b cf                	mov    %edi,%ecx
461200:	e8 29 f2 ff ff       	call   0x46042e
461205:	51                   	push   %ecx
461206:	8b ce                	mov    %esi,%ecx
461208:	3c 01                	cmp    $0x1,%al
46120a:	75 04                	jne    0x461210
46120c:	6a 03                	push   $0x3
46120e:	eb 02                	jmp    0x461212
461210:	6a 02                	push   $0x2
461212:	ff 75 08             	push   0x8(%ebp)
461215:	ff 75 fc             	push   -0x4(%ebp)
461218:	e8 ba 05 00 00       	call   0x4617d7
46121d:	eb 2a                	jmp    0x461249
46121f:	66 89 45 e6          	mov    %ax,-0x1a(%ebp)
461223:	33 d2                	xor    %edx,%edx
461225:	6a 1c                	push   $0x1c
461227:	8d 45 e0             	lea    -0x20(%ebp),%eax
46122a:	c7 45 e8 06 00 00 00 	movl   $0x6,-0x18(%ebp)
461231:	42                   	inc    %edx
461232:	33 c9                	xor    %ecx,%ecx
461234:	21 4d ec             	and    %ecx,-0x14(%ebp)
461237:	21 4d f0             	and    %ecx,-0x10(%ebp)
46123a:	50                   	push   %eax
46123b:	52                   	push   %edx
46123c:	89 55 e0             	mov    %edx,-0x20(%ebp)
46123f:	66 89 4d e4          	mov    %cx,-0x1c(%ebp)
461243:	ff 15 ec f5 48 00    	call   *0x48f5ec
461249:	8b ce                	mov    %esi,%ecx
46124b:	e8 95 ef ff ff       	call   0x4601e5
461250:	5f                   	pop    %edi
461251:	5e                   	pop    %esi
461252:	5b                   	pop    %ebx
461253:	8b e5                	mov    %ebp,%esp
461255:	5d                   	pop    %ebp
461256:	c2 04 00             	ret    $0x4
461259:	55                   	push   %ebp
46125a:	8b ec                	mov    %esp,%ebp
46125c:	56                   	push   %esi
46125d:	ff 75 08             	push   0x8(%ebp)
461260:	8b f1                	mov    %ecx,%esi
461262:	e8 7f fd ff ff       	call   0x460fe6
461267:	ff 75 08             	push   0x8(%ebp)
46126a:	8b ce                	mov    %esi,%ecx
46126c:	e8 b0 fe ff ff       	call   0x461121
461271:	5e                   	pop    %esi
461272:	5d                   	pop    %ebp
461273:	c2 04 00             	ret    $0x4
461276:	55                   	push   %ebp
461277:	8b ec                	mov    %esp,%ebp
461279:	81 ec 00 01 00 00    	sub    $0x100,%esp
46127f:	56                   	push   %esi
461280:	8b 75 08             	mov    0x8(%ebp),%esi
461283:	57                   	push   %edi
461284:	8b f9                	mov    %ecx,%edi
461286:	80 3e 00             	cmpb   $0x0,(%esi)
461289:	75 1c                	jne    0x4612a7
46128b:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
46128f:	75 16                	jne    0x4612a7
461291:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
461295:	75 10                	jne    0x4612a7
461297:	80 7e 03 00          	cmpb   $0x0,0x3(%esi)
46129b:	75 0a                	jne    0x4612a7
46129d:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
4612a1:	0f 84 ae 01 00 00    	je     0x461455
4612a7:	83 7f 20 00          	cmpl   $0x0,0x20(%edi)
4612ab:	53                   	push   %ebx
4612ac:	0f 84 2b 01 00 00    	je     0x4613dd
4612b2:	ff 77 20             	push   0x20(%edi)
4612b5:	ff 15 80 f6 48 00    	call   *0x48f680
4612bb:	85 c0                	test   %eax,%eax
4612bd:	0f 84 1a 01 00 00    	je     0x4613dd
4612c3:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
4612c9:	50                   	push   %eax
4612ca:	ff 15 f8 f5 48 00    	call   *0x48f5f8
4612d0:	85 c0                	test   %eax,%eax
4612d2:	74 5d                	je     0x461331
4612d4:	80 3e 00             	cmpb   $0x0,(%esi)
4612d7:	b9 80 00 00 00       	mov    $0x80,%ecx
4612dc:	8a 85 10 ff ff ff    	mov    -0xf0(%ebp),%al
4612e2:	74 0b                	je     0x4612ef
4612e4:	0a c1                	or     %cl,%al
4612e6:	08 4d a0             	or     %cl,-0x60(%ebp)
4612e9:	88 85 10 ff ff ff    	mov    %al,-0xf0(%ebp)
4612ef:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4612f3:	74 0b                	je     0x461300
4612f5:	0a c1                	or     %cl,%al
4612f7:	08 4d a1             	or     %cl,-0x5f(%ebp)
4612fa:	88 85 10 ff ff ff    	mov    %al,-0xf0(%ebp)
461300:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
461304:	74 06                	je     0x46130c
461306:	08 8d 11 ff ff ff    	or     %cl,-0xef(%ebp)
46130c:	80 7e 03 00          	cmpb   $0x0,0x3(%esi)
461310:	74 06                	je     0x461318
461312:	08 8d 12 ff ff ff    	or     %cl,-0xee(%ebp)
461318:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
46131c:	74 06                	je     0x461324
46131e:	08 8d 5b ff ff ff    	or     %cl,-0xa5(%ebp)
461324:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
46132a:	50                   	push   %eax
46132b:	ff 15 f4 f5 48 00    	call   *0x48f5f4
461331:	80 3e 00             	cmpb   $0x0,(%esi)
461334:	8b 1d 90 f6 48 00    	mov    0x48f690,%ebx
46133a:	75 06                	jne    0x461342
46133c:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
461340:	74 17                	je     0x461359
461342:	0f b6 47 26          	movzbl 0x26(%edi),%eax
461346:	c1 e0 10             	shl    $0x10,%eax
461349:	83 c8 01             	or     $0x1,%eax
46134c:	50                   	push   %eax
46134d:	6a 10                	push   $0x10
46134f:	68 00 01 00 00       	push   $0x100
461354:	ff 77 20             	push   0x20(%edi)
461357:	ff d3                	call   *%ebx
461359:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
46135d:	74 17                	je     0x461376
46135f:	0f b6 47 24          	movzbl 0x24(%edi),%eax
461363:	c1 e0 10             	shl    $0x10,%eax
461366:	83 c8 01             	or     $0x1,%eax
461369:	50                   	push   %eax
46136a:	6a 11                	push   $0x11
46136c:	68 00 01 00 00       	push   $0x100
461371:	ff 77 20             	push   0x20(%edi)
461374:	ff d3                	call   *%ebx
461376:	8a 46 03             	mov    0x3(%esi),%al
461379:	84 c0                	test   %al,%al
46137b:	74 3d                	je     0x4613ba
46137d:	80 7e 02 00          	cmpb   $0x0,0x2(%esi)
461381:	75 1c                	jne    0x46139f