42e080:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42e086:	eb ba                	jmp    0x42e042
42e088:	56                   	push   %esi
42e089:	e8 57 50 00 00       	call   0x4330e5
42e08e:	59                   	pop    %ecx
42e08f:	83 cb ff             	or     $0xffffffff,%ebx
42e092:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
42e095:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42e099:	8b 45 e0             	mov    -0x20(%ebp),%eax
42e09c:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e0a3:	8b 4d dc             	mov    -0x24(%ebp),%ecx
42e0a6:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
42e0ab:	75 15                	jne    0x42e0c2
42e0ad:	e8 7e 59 ff ff       	call   0x423a30
42e0b2:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42e0b8:	e8 60 59 ff ff       	call   0x423a1d
42e0bd:	83 20 00             	andl   $0x0,(%eax)
42e0c0:	eb 14                	jmp    0x42e0d6
42e0c2:	ff 75 10             	push   0x10(%ebp)
42e0c5:	ff 75 0c             	push   0xc(%ebp)
42e0c8:	56                   	push   %esi
42e0c9:	e8 34 00 00 00       	call   0x42e102
42e0ce:	83 c4 0c             	add    $0xc,%esp
42e0d1:	8b d8                	mov    %eax,%ebx
42e0d3:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
42e0d6:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
42e0dd:	e8 18 00 00 00       	call   0x42e0fa
42e0e2:	8b c3                	mov    %ebx,%eax
42e0e4:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42e0e7:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
42e0ee:	59                   	pop    %ecx
42e0ef:	5f                   	pop    %edi
42e0f0:	5e                   	pop    %esi
42e0f1:	5b                   	pop    %ebx
42e0f2:	c9                   	leave
42e0f3:	c3                   	ret
42e0f4:	8b 75 08             	mov    0x8(%ebp),%esi
42e0f7:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
42e0fa:	56                   	push   %esi
42e0fb:	e8 9a 50 00 00       	call   0x43319a
42e100:	59                   	pop    %ecx
42e101:	c3                   	ret
42e102:	8b ff                	mov    %edi,%edi
42e104:	55                   	push   %ebp
42e105:	8b ec                	mov    %esp,%ebp
42e107:	8b 55 08             	mov    0x8(%ebp),%edx
42e10a:	83 ec 24             	sub    $0x24,%esp
42e10d:	53                   	push   %ebx
42e10e:	57                   	push   %edi
42e10f:	83 fa fe             	cmp    $0xfffffffe,%edx
42e112:	75 18                	jne    0x42e12c
42e114:	e8 04 59 ff ff       	call   0x423a1d
42e119:	83 20 00             	andl   $0x0,(%eax)
42e11c:	e8 0f 59 ff ff       	call   0x423a30
42e121:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42e127:	e9 5a 03 00 00       	jmp    0x42e486
42e12c:	85 d2                	test   %edx,%edx
42e12e:	0f 88 3a 03 00 00    	js     0x42e46e
42e134:	3b 15 c0 6f 45 00    	cmp    0x456fc0,%edx
42e13a:	0f 83 2e 03 00 00    	jae    0x42e46e
42e140:	8b c2                	mov    %edx,%eax
42e142:	8b ca                	mov    %edx,%ecx
42e144:	c1 e9 06             	shr    $0x6,%ecx
42e147:	83 e0 3f             	and    $0x3f,%eax
42e14a:	6b f8 38             	imul   $0x38,%eax,%edi
42e14d:	33 db                	xor    %ebx,%ebx
42e14f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
42e152:	43                   	inc    %ebx
42e153:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
42e156:	8b 04 8d c0 6d 45 00 	mov    0x456dc0(,%ecx,4),%eax
42e15d:	89 7d f0             	mov    %edi,-0x10(%ebp)
42e160:	8a 4c 07 28          	mov    0x28(%edi,%eax,1),%cl
42e164:	88 4d ff             	mov    %cl,-0x1(%ebp)
42e167:	84 cb                	test   %cl,%bl
42e169:	0f 84 ff 02 00 00    	je     0x42e46e
42e16f:	8b 4d 10             	mov    0x10(%ebp),%ecx
42e172:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
42e178:	76 18                	jbe    0x42e192
42e17a:	e8 9e 58 ff ff       	call   0x423a1d
42e17f:	83 20 00             	andl   $0x0,(%eax)
42e182:	e8 a9 58 ff ff       	call   0x423a30
42e187:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42e18d:	e9 ef 02 00 00       	jmp    0x42e481
42e192:	85 c9                	test   %ecx,%ecx
42e194:	0f 84 d0 02 00 00    	je     0x42e46a
42e19a:	f6 45 ff 02          	testb  $0x2,-0x1(%ebp)
42e19e:	0f 85 c6 02 00 00    	jne    0x42e46a
42e1a4:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
42e1a8:	74 d0                	je     0x42e17a
42e1aa:	56                   	push   %esi
42e1ab:	8b 74 07 18          	mov    0x18(%edi,%eax,1),%esi
42e1af:	8a 44 07 29          	mov    0x29(%edi,%eax,1),%al
42e1b3:	88 45 ff             	mov    %al,-0x1(%ebp)
42e1b6:	89 75 ec             	mov    %esi,-0x14(%ebp)
42e1b9:	33 f6                	xor    %esi,%esi
42e1bb:	0f be c0             	movsbl %al,%eax
42e1be:	83 e8 01             	sub    $0x1,%eax
42e1c1:	74 33                	je     0x42e1f6
42e1c3:	83 e8 01             	sub    $0x1,%eax
42e1c6:	75 24                	jne    0x42e1ec
42e1c8:	8b c1                	mov    %ecx,%eax
42e1ca:	f7 d0                	not    %eax
42e1cc:	84 c3                	test   %al,%bl
42e1ce:	75 1c                	jne    0x42e1ec
42e1d0:	e8 48 58 ff ff       	call   0x423a1d
42e1d5:	21 30                	and    %esi,(%eax)
42e1d7:	e8 54 58 ff ff       	call   0x423a30
42e1dc:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42e1e2:	e8 9c 17 ff ff       	call   0x41f983
42e1e7:	e9 b5 01 00 00       	jmp    0x42e3a1
42e1ec:	8b d9                	mov    %ecx,%ebx
42e1ee:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42e1f1:	89 4d f4             	mov    %ecx,-0xc(%ebp)
42e1f4:	eb 73                	jmp    0x42e269
42e1f6:	8b c1                	mov    %ecx,%eax
42e1f8:	f7 d0                	not    %eax
42e1fa:	84 c3                	test   %al,%bl
42e1fc:	74 d2                	je     0x42e1d0
42e1fe:	6a 04                	push   $0x4
42e200:	d1 e9                	shr    $1,%ecx
42e202:	5b                   	pop    %ebx
42e203:	3b cb                	cmp    %ebx,%ecx
42e205:	72 02                	jb     0x42e209
42e207:	8b d9                	mov    %ecx,%ebx
42e209:	53                   	push   %ebx
42e20a:	e8 e5 c6 ff ff       	call   0x42a8f4
42e20f:	6a 00                	push   $0x0
42e211:	8b f0                	mov    %eax,%esi
42e213:	e8 a2 c6 ff ff       	call   0x42a8ba
42e218:	6a 00                	push   $0x0
42e21a:	e8 9b c6 ff ff       	call   0x42a8ba
42e21f:	83 c4 0c             	add    $0xc,%esp
42e222:	89 75 f4             	mov    %esi,-0xc(%ebp)
42e225:	85 f6                	test   %esi,%esi
42e227:	75 1b                	jne    0x42e244
42e229:	e8 02 58 ff ff       	call   0x423a30
42e22e:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
42e234:	e8 e4 57 ff ff       	call   0x423a1d
42e239:	c7 00 08 00 00 00    	movl   $0x8,(%eax)
42e23f:	e9 5d 01 00 00       	jmp    0x42e3a1
42e244:	6a 01                	push   $0x1
42e246:	6a 00                	push   $0x0
42e248:	6a 00                	push   $0x0
42e24a:	ff 75 08             	push   0x8(%ebp)
42e24d:	e8 be 02 00 00       	call   0x42e510
42e252:	8b 4d f8             	mov    -0x8(%ebp),%ecx
42e255:	83 c4 10             	add    $0x10,%esp
42e258:	8b 0c 8d c0 6d 45 00 	mov    0x456dc0(,%ecx,4),%ecx
42e25f:	89 44 0f 20          	mov    %eax,0x20(%edi,%ecx,1)
42e263:	89 54 0f 24          	mov    %edx,0x24(%edi,%ecx,1)
42e267:	8b ce                	mov    %esi,%ecx
42e269:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e26c:	33 ff                	xor    %edi,%edi
42e26e:	89 4d e0             	mov    %ecx,-0x20(%ebp)
42e271:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e278:	89 45 e8             	mov    %eax,-0x18(%ebp)
42e27b:	8b d0                	mov    %eax,%edx
42e27d:	8b 45 f0             	mov    -0x10(%ebp),%eax
42e280:	f6 44 10 28 48       	testb  $0x48,0x28(%eax,%edx,1)
42e285:	8b 55 08             	mov    0x8(%ebp),%edx
42e288:	0f 84 b6 00 00 00    	je     0x42e344
42e28e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
42e291:	8a 44 08 2a          	mov    0x2a(%eax,%ecx,1),%al
42e295:	8b 4d f4             	mov    -0xc(%ebp),%ecx
42e298:	3c 0a                	cmp    $0xa,%al
42e29a:	0f 84 a4 00 00 00    	je     0x42e344
42e2a0:	85 db                	test   %ebx,%ebx
42e2a2:	0f 84 9c 00 00 00    	je     0x42e344
42e2a8:	8b 55 f0             	mov    -0x10(%ebp),%edx
42e2ab:	47                   	inc    %edi
42e2ac:	88 01                	mov    %al,(%ecx)
42e2ae:	41                   	inc    %ecx
42e2af:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e2b2:	4b                   	dec    %ebx
42e2b3:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
42e2b7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
42e2ba:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e2c1:	c6 44 02 2a 0a       	movb   $0xa,0x2a(%edx,%eax,1)
42e2c6:	8b 55 08             	mov    0x8(%ebp),%edx
42e2c9:	74 79                	je     0x42e344
42e2cb:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e2ce:	8b 55 f0             	mov    -0x10(%ebp),%edx
42e2d1:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e2d8:	8a 44 02 2b          	mov    0x2b(%edx,%eax,1),%al
42e2dc:	8b 55 08             	mov    0x8(%ebp),%edx
42e2df:	3c 0a                	cmp    $0xa,%al
42e2e1:	74 61                	je     0x42e344
42e2e3:	85 db                	test   %ebx,%ebx
42e2e5:	74 5d                	je     0x42e344
42e2e7:	8b 55 f0             	mov    -0x10(%ebp),%edx
42e2ea:	88 01                	mov    %al,(%ecx)
42e2ec:	41                   	inc    %ecx
42e2ed:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e2f0:	4b                   	dec    %ebx
42e2f1:	80 7d ff 01          	cmpb   $0x1,-0x1(%ebp)
42e2f5:	6a 02                	push   $0x2
42e2f7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
42e2fa:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e301:	5f                   	pop    %edi
42e302:	c6 44 02 2b 0a       	movb   $0xa,0x2b(%edx,%eax,1)
42e307:	8b 55 08             	mov    0x8(%ebp),%edx
42e30a:	75 38                	jne    0x42e344
42e30c:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e30f:	8b 55 f0             	mov    -0x10(%ebp),%edx
42e312:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e319:	8a 44 02 2c          	mov    0x2c(%edx,%eax,1),%al
42e31d:	8b 55 08             	mov    0x8(%ebp),%edx
42e320:	3c 0a                	cmp    $0xa,%al
42e322:	74 20                	je     0x42e344
42e324:	85 db                	test   %ebx,%ebx
42e326:	74 1c                	je     0x42e344
42e328:	88 01                	mov    %al,(%ecx)
42e32a:	41                   	inc    %ecx
42e32b:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e32e:	4b                   	dec    %ebx
42e32f:	89 4d f4             	mov    %ecx,-0xc(%ebp)
42e332:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42e335:	6a 03                	push   $0x3
42e337:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e33e:	5f                   	pop    %edi
42e33f:	c6 44 01 2c 0a       	movb   $0xa,0x2c(%ecx,%eax,1)
42e344:	52                   	push   %edx
42e345:	e8 53 93 00 00       	call   0x43769d
42e34a:	59                   	pop    %ecx
42e34b:	85 c0                	test   %eax,%eax
42e34d:	74 6f                	je     0x42e3be
42e34f:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e352:	8b 4d f0             	mov    -0x10(%ebp),%ecx
42e355:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e35c:	80 7c 01 28 00       	cmpb   $0x0,0x28(%ecx,%eax,1)
42e361:	7d 5b                	jge    0x42e3be
42e363:	8d 45 dc             	lea    -0x24(%ebp),%eax
42e366:	50                   	push   %eax
42e367:	ff 75 ec             	push   -0x14(%ebp)
42e36a:	ff 15 d4 e1 43 00    	call   *0x43e1d4
42e370:	85 c0                	test   %eax,%eax
42e372:	74 4a                	je     0x42e3be
42e374:	80 7d ff 02          	cmpb   $0x2,-0x1(%ebp)
42e378:	75 48                	jne    0x42e3c2
42e37a:	6a 00                	push   $0x0
42e37c:	8d 45 e8             	lea    -0x18(%ebp),%eax
42e37f:	d1 eb                	shr    $1,%ebx
42e381:	50                   	push   %eax
42e382:	53                   	push   %ebx
42e383:	8b 5d f4             	mov    -0xc(%ebp),%ebx
42e386:	53                   	push   %ebx
42e387:	ff 75 ec             	push   -0x14(%ebp)
42e38a:	ff 15 f0 e1 43 00    	call   *0x43e1f0
42e390:	85 c0                	test   %eax,%eax
42e392:	75 1f                	jne    0x42e3b3
42e394:	ff 15 6c e0 43 00    	call   *0x43e06c
42e39a:	50                   	push   %eax
42e39b:	e8 36 56 ff ff       	call   0x4239d6
42e3a0:	59                   	pop    %ecx
42e3a1:	83 cf ff             	or     $0xffffffff,%edi
42e3a4:	56                   	push   %esi
42e3a5:	e8 10 c5 ff ff       	call   0x42a8ba
42e3aa:	59                   	pop    %ecx
42e3ab:	8b c7                	mov    %edi,%eax
42e3ad:	5e                   	pop    %esi
42e3ae:	e9 d6 00 00 00       	jmp    0x42e489
42e3b3:	8b 45 e8             	mov    -0x18(%ebp),%eax
42e3b6:	8b 4d 10             	mov    0x10(%ebp),%ecx
42e3b9:	8d 3c 47             	lea    (%edi,%eax,2),%edi
42e3bc:	eb 27                	jmp    0x42e3e5
42e3be:	c6 45 e4 00          	movb   $0x0,-0x1c(%ebp)
42e3c2:	6a 00                	push   $0x0
42e3c4:	8d 45 e8             	lea    -0x18(%ebp),%eax
42e3c7:	50                   	push   %eax
42e3c8:	53                   	push   %ebx
42e3c9:	8b 5d f4             	mov    -0xc(%ebp),%ebx
42e3cc:	53                   	push   %ebx
42e3cd:	ff 75 ec             	push   -0x14(%ebp)
42e3d0:	ff 15 98 e0 43 00    	call   *0x43e098
42e3d6:	85 c0                	test   %eax,%eax
42e3d8:	74 5c                	je     0x42e436
42e3da:	8b 4d 10             	mov    0x10(%ebp),%ecx
42e3dd:	39 4d e8             	cmp    %ecx,-0x18(%ebp)
42e3e0:	77 54                	ja     0x42e436
42e3e2:	03 7d e8             	add    -0x18(%ebp),%edi
42e3e5:	8b 45 f8             	mov    -0x8(%ebp),%eax
42e3e8:	8b 55 f0             	mov    -0x10(%ebp),%edx
42e3eb:	8b 04 85 c0 6d 45 00 	mov    0x456dc0(,%eax,4),%eax
42e3f2:	80 7c 02 28 00       	cmpb   $0x0,0x28(%edx,%eax,1)
42e3f7:	7d ab                	jge    0x42e3a4
42e3f9:	80 7d ff 02          	cmpb   $0x2,-0x1(%ebp)
42e3fd:	74 17                	je     0x42e416
42e3ff:	d1 e9                	shr    $1,%ecx
42e401:	51                   	push   %ecx
42e402:	ff 75 0c             	push   0xc(%ebp)
42e405:	57                   	push   %edi
42e406:	53                   	push   %ebx
42e407:	ff 75 08             	push   0x8(%ebp)
42e40a:	e8 05 fa ff ff       	call   0x42de14
42e40f:	83 c4 14             	add    $0x14,%esp
42e412:	8b f8                	mov    %eax,%edi
42e414:	eb 8e                	jmp    0x42e3a4
42e416:	d1 ef                	shr    $1,%edi
42e418:	80 7d e4 00          	cmpb   $0x0,-0x1c(%ebp)
42e41c:	57                   	push   %edi
42e41d:	ff 75 e0             	push   -0x20(%ebp)
42e420:	ff 75 08             	push   0x8(%ebp)
42e423:	74 0a                	je     0x42e42f
42e425:	e8 41 fb ff ff       	call   0x42df6b
42e42a:	83 c4 0c             	add    $0xc,%esp
42e42d:	eb e3                	jmp    0x42e412
42e42f:	e8 26 f8 ff ff       	call   0x42dc5a
42e434:	eb f4                	jmp    0x42e42a
42e436:	ff 15 6c e0 43 00    	call   *0x43e06c
42e43c:	6a 05                	push   $0x5
42e43e:	5f                   	pop    %edi
42e43f:	3b c7                	cmp    %edi,%eax
42e441:	75 17                	jne    0x42e45a
42e443:	e8 e8 55 ff ff       	call   0x423a30
42e448:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42e44e:	e8 ca 55 ff ff       	call   0x423a1d
42e453:	89 38                	mov    %edi,(%eax)
42e455:	e9 47 ff ff ff       	jmp    0x42e3a1
42e45a:	83 f8 6d             	cmp    $0x6d,%eax
42e45d:	0f 85 37 ff ff ff    	jne    0x42e39a
42e463:	33 ff                	xor    %edi,%edi
42e465:	e9 3a ff ff ff       	jmp    0x42e3a4
42e46a:	33 c0                	xor    %eax,%eax
42e46c:	eb 1b                	jmp    0x42e489
42e46e:	e8 aa 55 ff ff       	call   0x423a1d
42e473:	83 20 00             	andl   $0x0,(%eax)
42e476:	e8 b5 55 ff ff       	call   0x423a30
42e47b:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42e481:	e8 fd 14 ff ff       	call   0x41f983
42e486:	83 c8 ff             	or     $0xffffffff,%eax
42e489:	5f                   	pop    %edi
42e48a:	5b                   	pop    %ebx
42e48b:	c9                   	leave
42e48c:	c3                   	ret
42e48d:	8b ff                	mov    %edi,%edi
42e48f:	55                   	push   %ebp
42e490:	8b ec                	mov    %esp,%ebp
42e492:	51                   	push   %ecx
42e493:	51                   	push   %ecx
42e494:	56                   	push   %esi
42e495:	8b 75 08             	mov    0x8(%ebp),%esi
42e498:	57                   	push   %edi
42e499:	56                   	push   %esi
42e49a:	e8 c2 4e 00 00       	call   0x433361
42e49f:	83 cf ff             	or     $0xffffffff,%edi
42e4a2:	59                   	pop    %ecx
42e4a3:	3b c7                	cmp    %edi,%eax
42e4a5:	75 14                	jne    0x42e4bb
42e4a7:	8b 45 18             	mov    0x18(%ebp),%eax
42e4aa:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)