47aff2:	85 ff                	test   %edi,%edi
47aff4:	74 11                	je     0x47b007
47aff6:	39 75 f0             	cmp    %esi,-0x10(%ebp)
47aff9:	0f 85 bc 00 00 00    	jne    0x47b0bb
47afff:	8d 77 ff             	lea    -0x1(%edi),%esi
47b002:	e9 ed 00 00 00       	jmp    0x47b0f4
47b007:	39 75 f0             	cmp    %esi,-0x10(%ebp)
47b00a:	0f 85 ab 00 00 00    	jne    0x47b0bb
47b010:	ff 15 24 41 49 00    	call   *0x494124
47b016:	83 f8 7a             	cmp    $0x7a,%eax
47b019:	0f 85 9c 00 00 00    	jne    0x47b0bb
47b01f:	85 db                	test   %ebx,%ebx
47b021:	0f 84 01 01 00 00    	je     0x47b128
47b027:	8b 45 ec             	mov    -0x14(%ebp),%eax
47b02a:	8b 55 d8             	mov    -0x28(%ebp),%edx
47b02d:	8b 4a 04             	mov    0x4(%edx),%ecx
47b030:	83 f9 05             	cmp    $0x5,%ecx
47b033:	7e 03                	jle    0x47b038
47b035:	6a 05                	push   $0x5
47b037:	59                   	pop    %ecx
47b038:	8d 5d f0             	lea    -0x10(%ebp),%ebx
47b03b:	53                   	push   %ebx
47b03c:	56                   	push   %esi
47b03d:	51                   	push   %ecx
47b03e:	8d 4d f4             	lea    -0xc(%ebp),%ecx
47b041:	51                   	push   %ecx
47b042:	6a 01                	push   $0x1
47b044:	50                   	push   %eax
47b045:	56                   	push   %esi
47b046:	ff 72 08             	push   0x8(%edx)
47b049:	ff 15 78 41 49 00    	call   *0x494178
47b04f:	8b 5d 10             	mov    0x10(%ebp),%ebx
47b052:	8b d0                	mov    %eax,%edx
47b054:	85 d2                	test   %edx,%edx
47b056:	0f 84 be 00 00 00    	je     0x47b11a
47b05c:	39 75 f0             	cmp    %esi,-0x10(%ebp)
47b05f:	0f 85 b5 00 00 00    	jne    0x47b11a
47b065:	85 d2                	test   %edx,%edx
47b067:	0f 88 ad 00 00 00    	js     0x47b11a
47b06d:	83 fa 05             	cmp    $0x5,%edx
47b070:	0f 87 a4 00 00 00    	ja     0x47b11a
47b076:	8d 04 3a             	lea    (%edx,%edi,1),%eax
47b079:	3b c3                	cmp    %ebx,%eax
47b07b:	0f 87 a7 00 00 00    	ja     0x47b128
47b081:	8b c6                	mov    %esi,%eax
47b083:	89 45 e4             	mov    %eax,-0x1c(%ebp)
47b086:	85 d2                	test   %edx,%edx
47b088:	7e 1e                	jle    0x47b0a8
47b08a:	8b 4d e8             	mov    -0x18(%ebp),%ecx
47b08d:	8a 44 05 f4          	mov    -0xc(%ebp,%eax,1),%al
47b091:	88 04 39             	mov    %al,(%ecx,%edi,1)
47b094:	84 c0                	test   %al,%al
47b096:	0f 84 8c 00 00 00    	je     0x47b128
47b09c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
47b09f:	40                   	inc    %eax
47b0a0:	47                   	inc    %edi
47b0a1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
47b0a4:	3b c2                	cmp    %edx,%eax
47b0a6:	7c e5                	jl     0x47b08d
47b0a8:	8b 45 ec             	mov    -0x14(%ebp),%eax
47b0ab:	83 c0 02             	add    $0x2,%eax
47b0ae:	89 45 ec             	mov    %eax,-0x14(%ebp)
47b0b1:	3b fb                	cmp    %ebx,%edi
47b0b3:	0f 82 71 ff ff ff    	jb     0x47b02a
47b0b9:	eb 6d                	jmp    0x47b128
47b0bb:	e8 6f 1d fd ff       	call   0x44ce2f
47b0c0:	83 ce ff             	or     $0xffffffff,%esi
47b0c3:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
47b0c9:	eb 29                	jmp    0x47b0f4
47b0cb:	8b 45 d8             	mov    -0x28(%ebp),%eax
47b0ce:	39 b0 a8 00 00 00    	cmp    %esi,0xa8(%eax)
47b0d4:	75 22                	jne    0x47b0f8
47b0d6:	0f b7 07             	movzwl (%edi),%eax
47b0d9:	66 85 c0             	test   %ax,%ax
47b0dc:	74 16                	je     0x47b0f4
47b0de:	ba ff 00 00 00       	mov    $0xff,%edx
47b0e3:	66 3b c2             	cmp    %dx,%ax
47b0e6:	77 32                	ja     0x47b11a
47b0e8:	83 c7 02             	add    $0x2,%edi
47b0eb:	46                   	inc    %esi
47b0ec:	0f b7 07             	movzwl (%edi),%eax
47b0ef:	66 85 c0             	test   %ax,%ax
47b0f2:	75 ef                	jne    0x47b0e3
47b0f4:	8b fe                	mov    %esi,%edi
47b0f6:	eb 30                	jmp    0x47b128
47b0f8:	8d 4d f0             	lea    -0x10(%ebp),%ecx
47b0fb:	51                   	push   %ecx
47b0fc:	56                   	push   %esi
47b0fd:	56                   	push   %esi
47b0fe:	56                   	push   %esi
47b0ff:	6a ff                	push   $0xffffffff
47b101:	57                   	push   %edi
47b102:	56                   	push   %esi
47b103:	ff 70 08             	push   0x8(%eax)
47b106:	ff 15 78 41 49 00    	call   *0x494178
47b10c:	85 c0                	test   %eax,%eax
47b10e:	74 0a                	je     0x47b11a
47b110:	39 75 f0             	cmp    %esi,-0x10(%ebp)
47b113:	75 05                	jne    0x47b11a
47b115:	8d 78 ff             	lea    -0x1(%eax),%edi
47b118:	eb 0e                	jmp    0x47b128
47b11a:	e8 10 1d fd ff       	call   0x44ce2f
47b11f:	83 cf ff             	or     $0xffffffff,%edi
47b122:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
47b128:	80 7d e0 00          	cmpb   $0x0,-0x20(%ebp)
47b12c:	74 0a                	je     0x47b138
47b12e:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
47b131:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
47b138:	8b c7                	mov    %edi,%eax
47b13a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47b13d:	5f                   	pop    %edi
47b13e:	5e                   	pop    %esi
47b13f:	33 cd                	xor    %ebp,%ecx
47b141:	5b                   	pop    %ebx
47b142:	e8 bb 48 fc ff       	call   0x43fa02
47b147:	8b e5                	mov    %ebp,%esp
47b149:	5d                   	pop    %ebp
47b14a:	c3                   	ret
47b14b:	8b ff                	mov    %edi,%edi
47b14d:	55                   	push   %ebp
47b14e:	8b ec                	mov    %esp,%ebp
47b150:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47b153:	8b d1                	mov    %ecx,%edx
47b155:	8b 45 08             	mov    0x8(%ebp),%eax
47b158:	56                   	push   %esi
47b159:	85 c9                	test   %ecx,%ecx
47b15b:	74 20                	je     0x47b17d
47b15d:	33 f6                	xor    %esi,%esi
47b15f:	66 39 30             	cmp    %si,(%eax)
47b162:	74 08                	je     0x47b16c
47b164:	83 c0 02             	add    $0x2,%eax
47b167:	83 ea 01             	sub    $0x1,%edx
47b16a:	75 f3                	jne    0x47b15f
47b16c:	85 d2                	test   %edx,%edx
47b16e:	74 0d                	je     0x47b17d
47b170:	66 39 30             	cmp    %si,(%eax)
47b173:	75 08                	jne    0x47b17d
47b175:	2b 45 08             	sub    0x8(%ebp),%eax
47b178:	d1 f8                	sar    $1,%eax
47b17a:	40                   	inc    %eax
47b17b:	eb 02                	jmp    0x47b17f
47b17d:	8b c1                	mov    %ecx,%eax
47b17f:	5e                   	pop    %esi
47b180:	5d                   	pop    %ebp
47b181:	c3                   	ret
47b182:	8b ff                	mov    %edi,%edi
47b184:	55                   	push   %ebp
47b185:	8b ec                	mov    %esp,%ebp
47b187:	5d                   	pop    %ebp
47b188:	e9 3d fd ff ff       	jmp    0x47aeca
47b18d:	8b ff                	mov    %edi,%edi
47b18f:	55                   	push   %ebp
47b190:	8b ec                	mov    %esp,%ebp
47b192:	51                   	push   %ecx
47b193:	56                   	push   %esi
47b194:	8b 75 0c             	mov    0xc(%ebp),%esi
47b197:	33 c0                	xor    %eax,%eax
47b199:	89 45 fc             	mov    %eax,-0x4(%ebp)
47b19c:	57                   	push   %edi
47b19d:	8b 7d 10             	mov    0x10(%ebp),%edi
47b1a0:	85 f6                	test   %esi,%esi
47b1a2:	74 2e                	je     0x47b1d2
47b1a4:	85 ff                	test   %edi,%edi
47b1a6:	74 2e                	je     0x47b1d6
47b1a8:	85 f6                	test   %esi,%esi
47b1aa:	74 02                	je     0x47b1ae
47b1ac:	88 06                	mov    %al,(%esi)
47b1ae:	53                   	push   %ebx
47b1af:	8b 5d 08             	mov    0x8(%ebp),%ebx
47b1b2:	85 db                	test   %ebx,%ebx
47b1b4:	74 02                	je     0x47b1b8
47b1b6:	89 03                	mov    %eax,(%ebx)
47b1b8:	8b c7                	mov    %edi,%eax
47b1ba:	39 7d 18             	cmp    %edi,0x18(%ebp)
47b1bd:	77 03                	ja     0x47b1c2
47b1bf:	8b 45 18             	mov    0x18(%ebp),%eax
47b1c2:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
47b1c7:	76 20                	jbe    0x47b1e9
47b1c9:	e8 61 1c fd ff       	call   0x44ce2f
47b1ce:	6a 16                	push   $0x16
47b1d0:	eb 59                	jmp    0x47b22b
47b1d2:	85 ff                	test   %edi,%edi
47b1d4:	74 d2                	je     0x47b1a8
47b1d6:	e8 54 1c fd ff       	call   0x44ce2f
47b1db:	6a 16                	push   $0x16
47b1dd:	5e                   	pop    %esi
47b1de:	89 30                	mov    %esi,(%eax)
47b1e0:	e8 f1 1a fd ff       	call   0x44ccd6
47b1e5:	8b c6                	mov    %esi,%eax
47b1e7:	eb 6b                	jmp    0x47b254
47b1e9:	ff 75 1c             	push   0x1c(%ebp)
47b1ec:	50                   	push   %eax
47b1ed:	ff 75 14             	push   0x14(%ebp)
47b1f0:	56                   	push   %esi
47b1f1:	e8 d4 fc ff ff       	call   0x47aeca
47b1f6:	83 c4 10             	add    $0x10,%esp
47b1f9:	83 f8 ff             	cmp    $0xffffffff,%eax
47b1fc:	75 10                	jne    0x47b20e
47b1fe:	85 f6                	test   %esi,%esi
47b200:	74 03                	je     0x47b205
47b202:	c6 06 00             	movb   $0x0,(%esi)
47b205:	e8 25 1c fd ff       	call   0x44ce2f
47b20a:	8b 00                	mov    (%eax),%eax
47b20c:	eb 45                	jmp    0x47b253
47b20e:	40                   	inc    %eax
47b20f:	85 f6                	test   %esi,%esi
47b211:	74 35                	je     0x47b248
47b213:	3b c7                	cmp    %edi,%eax
47b215:	76 27                	jbe    0x47b23e
47b217:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
47b21b:	74 1a                	je     0x47b237
47b21d:	c6 06 00             	movb   $0x0,(%esi)
47b220:	3b f8                	cmp    %eax,%edi
47b222:	77 13                	ja     0x47b237
47b224:	e8 06 1c fd ff       	call   0x44ce2f
47b229:	6a 22                	push   $0x22
47b22b:	5e                   	pop    %esi
47b22c:	89 30                	mov    %esi,(%eax)
47b22e:	e8 a3 1a fd ff       	call   0x44ccd6
47b233:	8b c6                	mov    %esi,%eax
47b235:	eb 1c                	jmp    0x47b253
47b237:	6a 50                	push   $0x50
47b239:	8b c7                	mov    %edi,%eax
47b23b:	59                   	pop    %ecx
47b23c:	eb 03                	jmp    0x47b241
47b23e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47b241:	c6 44 30 ff 00       	movb   $0x0,-0x1(%eax,%esi,1)
47b246:	eb 03                	jmp    0x47b24b
47b248:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47b24b:	85 db                	test   %ebx,%ebx
47b24d:	74 02                	je     0x47b251
47b24f:	89 03                	mov    %eax,(%ebx)
47b251:	8b c1                	mov    %ecx,%eax
47b253:	5b                   	pop    %ebx
47b254:	5f                   	pop    %edi
47b255:	5e                   	pop    %esi
47b256:	8b e5                	mov    %ebp,%esp
47b258:	5d                   	pop    %ebp
47b259:	c3                   	ret
47b25a:	8b ff                	mov    %edi,%edi
47b25c:	55                   	push   %ebp
47b25d:	8b ec                	mov    %esp,%ebp
47b25f:	6a 00                	push   $0x0
47b261:	ff 75 10             	push   0x10(%ebp)
47b264:	ff 75 0c             	push   0xc(%ebp)
47b267:	ff 75 08             	push   0x8(%ebp)
47b26a:	e8 5b fc ff ff       	call   0x47aeca
47b26f:	83 c4 10             	add    $0x10,%esp
47b272:	5d                   	pop    %ebp
47b273:	c3                   	ret
47b274:	8b ff                	mov    %edi,%edi
47b276:	55                   	push   %ebp
47b277:	8b ec                	mov    %esp,%ebp
47b279:	6a 00                	push   $0x0
47b27b:	ff 75 18             	push   0x18(%ebp)
47b27e:	ff 75 14             	push   0x14(%ebp)
47b281:	ff 75 10             	push   0x10(%ebp)
47b284:	ff 75 0c             	push   0xc(%ebp)
47b287:	ff 75 08             	push   0x8(%ebp)
47b28a:	e8 fe fe ff ff       	call   0x47b18d
47b28f:	83 c4 18             	add    $0x18,%esp
47b292:	5d                   	pop    %ebp
47b293:	c3                   	ret
47b294:	8b ff                	mov    %edi,%edi
47b296:	55                   	push   %ebp
47b297:	8b ec                	mov    %esp,%ebp
47b299:	68 07 01 00 00       	push   $0x107
47b29e:	ff 75 08             	push   0x8(%ebp)
47b2a1:	e8 4a 71 ff ff       	call   0x4723f0
47b2a6:	59                   	pop    %ecx
47b2a7:	59                   	pop    %ecx
47b2a8:	85 c0                	test   %eax,%eax
47b2aa:	75 09                	jne    0x47b2b5
47b2ac:	66 83 7d 08 5f       	cmpw   $0x5f,0x8(%ebp)
47b2b1:	74 02                	je     0x47b2b5
47b2b3:	5d                   	pop    %ebp
47b2b4:	c3                   	ret
47b2b5:	33 c0                	xor    %eax,%eax
47b2b7:	40                   	inc    %eax
47b2b8:	5d                   	pop    %ebp
47b2b9:	c3                   	ret
47b2ba:	8b ff                	mov    %edi,%edi
47b2bc:	55                   	push   %ebp
47b2bd:	8b ec                	mov    %esp,%ebp
47b2bf:	68 03 01 00 00       	push   $0x103
47b2c4:	ff 75 08             	push   0x8(%ebp)
47b2c7:	e8 24 71 ff ff       	call   0x4723f0
47b2cc:	59                   	pop    %ecx
47b2cd:	59                   	pop    %ecx
47b2ce:	85 c0                	test   %eax,%eax
47b2d0:	75 09                	jne    0x47b2db
47b2d2:	66 83 7d 08 5f       	cmpw   $0x5f,0x8(%ebp)
47b2d7:	74 02                	je     0x47b2db
47b2d9:	5d                   	pop    %ebp
47b2da:	c3                   	ret
47b2db:	33 c0                	xor    %eax,%eax
47b2dd:	40                   	inc    %eax
47b2de:	5d                   	pop    %ebp
47b2df:	c3                   	ret
47b2e0:	8b ff                	mov    %edi,%edi
47b2e2:	55                   	push   %ebp
47b2e3:	8b ec                	mov    %esp,%ebp
47b2e5:	83 ec 10             	sub    $0x10,%esp
47b2e8:	ff 75 0c             	push   0xc(%ebp)
47b2eb:	8d 4d f0             	lea    -0x10(%ebp),%ecx
47b2ee:	e8 15 3d fd ff       	call   0x44f008
47b2f3:	8b 45 f4             	mov    -0xc(%ebp),%eax
47b2f6:	0f b6 4d 08          	movzbl 0x8(%ebp),%ecx
47b2fa:	8b 00                	mov    (%eax),%eax
47b2fc:	0f b7 04 48          	movzwl (%eax,%ecx,2),%eax
47b300:	25 00 80 00 00       	and    $0x8000,%eax
47b305:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
47b309:	74 0a                	je     0x47b315
47b30b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
47b30e:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
47b315:	8b e5                	mov    %ebp,%esp
47b317:	5d                   	pop    %ebp
47b318:	c3                   	ret
47b319:	8b ff                	mov    %edi,%edi
47b31b:	55                   	push   %ebp
47b31c:	8b ec                	mov    %esp,%ebp
47b31e:	68 07 01 00 00       	push   $0x107
47b323:	ff 75 08             	push   0x8(%ebp)
47b326:	e8 c5 70 ff ff       	call   0x4723f0
47b32b:	59                   	pop    %ecx
47b32c:	59                   	pop    %ecx
47b32d:	5d                   	pop    %ebp
47b32e:	c3                   	ret
47b32f:	8b ff                	mov    %edi,%edi
47b331:	55                   	push   %ebp
47b332:	8b ec                	mov    %esp,%ebp
47b334:	68 03 01 00 00       	push   $0x103
47b339:	ff 75 08             	push   0x8(%ebp)
47b33c:	e8 af 70 ff ff       	call   0x4723f0
47b341:	59                   	pop    %ecx
47b342:	59                   	pop    %ecx
47b343:	5d                   	pop    %ebp
47b344:	c3                   	ret
47b345:	8b ff                	mov    %edi,%edi
47b347:	55                   	push   %ebp
47b348:	8b ec                	mov    %esp,%ebp
47b34a:	66 83 7d 08 09       	cmpw   $0x9,0x8(%ebp)
47b34f:	6a 40                	push   $0x40
47b351:	75 03                	jne    0x47b356
47b353:	58                   	pop    %eax
47b354:	5d                   	pop    %ebp
47b355:	c3                   	ret
47b356:	ff 75 08             	push   0x8(%ebp)
47b359:	e8 92 70 ff ff       	call   0x4723f0
47b35e:	59                   	pop    %ecx