42b293:	56                   	push   %esi
42b294:	8b 75 08             	mov    0x8(%ebp),%esi
42b297:	57                   	push   %edi
42b298:	0f bf cb             	movswl %bx,%ecx
42b29b:	8b 56 04             	mov    0x4(%esi),%edx
42b29e:	23 55 10             	and    0x10(%ebp),%edx
42b2a1:	23 06                	and    (%esi),%eax
42b2a3:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
42b2a9:	e8 b2 ef 00 00       	call   0x43a260
42b2ae:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
42b2b2:	0f b7 f8             	movzwl %ax,%edi
42b2b5:	75 09                	jne    0x42b2c0
42b2b7:	83 ff 08             	cmp    $0x8,%edi
42b2ba:	1a c0                	sbb    %al,%al
42b2bc:	fe c0                	inc    %al
42b2be:	eb 55                	jmp    0x42b315
42b2c0:	e8 a9 32 00 00       	call   0x42e56e
42b2c5:	85 c0                	test   %eax,%eax
42b2c7:	75 12                	jne    0x42b2db
42b2c9:	53                   	push   %ebx
42b2ca:	ff 75 10             	push   0x10(%ebp)
42b2cd:	ff 75 0c             	push   0xc(%ebp)
42b2d0:	56                   	push   %esi
42b2d1:	e8 ce f6 ff ff       	call   0x42a9a4
42b2d6:	83 c4 10             	add    $0x10,%esp
42b2d9:	eb 3a                	jmp    0x42b315
42b2db:	3d 00 02 00 00       	cmp    $0x200,%eax
42b2e0:	75 16                	jne    0x42b2f8
42b2e2:	33 c0                	xor    %eax,%eax
42b2e4:	66 85 ff             	test   %di,%di
42b2e7:	74 2c                	je     0x42b315
42b2e9:	39 46 04             	cmp    %eax,0x4(%esi)
42b2ec:	7c 27                	jl     0x42b315
42b2ee:	7f 04                	jg     0x42b2f4
42b2f0:	39 06                	cmp    %eax,(%esi)
42b2f2:	72 21                	jb     0x42b315
42b2f4:	b0 01                	mov    $0x1,%al
42b2f6:	eb 1d                	jmp    0x42b315
42b2f8:	3d 00 01 00 00       	cmp    $0x100,%eax
42b2fd:	75 14                	jne    0x42b313
42b2ff:	33 c0                	xor    %eax,%eax
42b301:	66 85 ff             	test   %di,%di
42b304:	74 0f                	je     0x42b315
42b306:	39 46 04             	cmp    %eax,0x4(%esi)
42b309:	7f 0a                	jg     0x42b315
42b30b:	7c e7                	jl     0x42b2f4
42b30d:	39 06                	cmp    %eax,(%esi)
42b30f:	73 04                	jae    0x42b315
42b311:	eb e1                	jmp    0x42b2f4
42b313:	32 c0                	xor    %al,%al
42b315:	5f                   	pop    %edi
42b316:	5e                   	pop    %esi
42b317:	5b                   	pop    %ebx
42b318:	5d                   	pop    %ebp
42b319:	c3                   	ret
42b31a:	8b ff                	mov    %edi,%edi
42b31c:	55                   	push   %ebp
42b31d:	8b ec                	mov    %esp,%ebp
42b31f:	51                   	push   %ecx
42b320:	51                   	push   %ecx
42b321:	53                   	push   %ebx
42b322:	56                   	push   %esi
42b323:	57                   	push   %edi
42b324:	8b 7d 0c             	mov    0xc(%ebp),%edi
42b327:	85 ff                	test   %edi,%edi
42b329:	75 24                	jne    0x42b34f
42b32b:	8b 4d 30             	mov    0x30(%ebp),%ecx
42b32e:	6a 16                	push   $0x16
42b330:	5e                   	pop    %esi
42b331:	51                   	push   %ecx
42b332:	c6 41 1c 01          	movb   $0x1,0x1c(%ecx)
42b336:	89 71 18             	mov    %esi,0x18(%ecx)
42b339:	33 db                	xor    %ebx,%ebx
42b33b:	53                   	push   %ebx
42b33c:	53                   	push   %ebx
42b33d:	53                   	push   %ebx
42b33e:	53                   	push   %ebx
42b33f:	53                   	push   %ebx
42b340:	e8 c1 45 ff ff       	call   0x41f906
42b345:	83 c4 18             	add    $0x18,%esp
42b348:	8b c6                	mov    %esi,%eax
42b34a:	e9 47 01 00 00       	jmp    0x42b496
42b34f:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
42b353:	77 10                	ja     0x42b365
42b355:	8b 45 30             	mov    0x30(%ebp),%eax
42b358:	6a 16                	push   $0x16
42b35a:	5e                   	pop    %esi
42b35b:	50                   	push   %eax
42b35c:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
42b360:	89 70 18             	mov    %esi,0x18(%eax)
42b363:	eb d4                	jmp    0x42b339
42b365:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
42b369:	74 ea                	je     0x42b355
42b36b:	33 db                	xor    %ebx,%ebx
42b36d:	39 5d 18             	cmp    %ebx,0x18(%ebp)
42b370:	77 10                	ja     0x42b382
42b372:	8b 45 30             	mov    0x30(%ebp),%eax
42b375:	6a 16                	push   $0x16
42b377:	5e                   	pop    %esi
42b378:	50                   	push   %eax
42b379:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
42b37d:	89 70 18             	mov    %esi,0x18(%eax)
42b380:	eb b9                	jmp    0x42b33b
42b382:	8b 75 1c             	mov    0x1c(%ebp),%esi
42b385:	83 fe 41             	cmp    $0x41,%esi
42b388:	74 12                	je     0x42b39c
42b38a:	83 fe 45             	cmp    $0x45,%esi
42b38d:	74 0d                	je     0x42b39c
42b38f:	83 fe 46             	cmp    $0x46,%esi
42b392:	74 08                	je     0x42b39c
42b394:	88 5d fc             	mov    %bl,-0x4(%ebp)
42b397:	83 fe 47             	cmp    $0x47,%esi
42b39a:	75 04                	jne    0x42b3a0
42b39c:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
42b3a0:	8b 4d 24             	mov    0x24(%ebp),%ecx
42b3a3:	8b c1                	mov    %ecx,%eax
42b3a5:	83 e0 08             	and    $0x8,%eax
42b3a8:	0b c3                	or     %ebx,%eax
42b3aa:	75 41                	jne    0x42b3ed
42b3ac:	ff 75 08             	push   0x8(%ebp)
42b3af:	e8 8e f5 ff ff       	call   0x42a942
42b3b4:	59                   	pop    %ecx
42b3b5:	8b c8                	mov    %eax,%ecx
42b3b7:	85 c9                	test   %ecx,%ecx
42b3b9:	74 2f                	je     0x42b3ea
42b3bb:	8b 45 08             	mov    0x8(%ebp),%eax
42b3be:	39 58 04             	cmp    %ebx,0x4(%eax)
42b3c1:	7f 0c                	jg     0x42b3cf
42b3c3:	7c 04                	jl     0x42b3c9
42b3c5:	39 18                	cmp    %ebx,(%eax)
42b3c7:	73 06                	jae    0x42b3cf
42b3c9:	c6 45 f8 01          	movb   $0x1,-0x8(%ebp)
42b3cd:	eb 03                	jmp    0x42b3d2
42b3cf:	88 5d f8             	mov    %bl,-0x8(%ebp)
42b3d2:	ff 75 fc             	push   -0x4(%ebp)
42b3d5:	ff 75 10             	push   0x10(%ebp)
42b3d8:	57                   	push   %edi
42b3d9:	ff 75 f8             	push   -0x8(%ebp)
42b3dc:	51                   	push   %ecx
42b3dd:	e8 dc fd ff ff       	call   0x42b1be
42b3e2:	83 c4 14             	add    $0x14,%esp
42b3e5:	e9 ac 00 00 00       	jmp    0x42b496
42b3ea:	8b 4d 24             	mov    0x24(%ebp),%ecx
42b3ed:	8b c1                	mov    %ecx,%eax
42b3ef:	83 e0 10             	and    $0x10,%eax
42b3f2:	0b c3                	or     %ebx,%eax
42b3f4:	74 04                	je     0x42b3fa
42b3f6:	6a 03                	push   $0x3
42b3f8:	eb 02                	jmp    0x42b3fc
42b3fa:	6a 02                	push   $0x2
42b3fc:	83 e1 20             	and    $0x20,%ecx
42b3ff:	0b cb                	or     %ebx,%ecx
42b401:	58                   	pop    %eax
42b402:	74 03                	je     0x42b407
42b404:	8b 5d 2c             	mov    0x2c(%ebp),%ebx
42b407:	83 fe 61             	cmp    $0x61,%esi
42b40a:	7f 2b                	jg     0x42b437
42b40c:	74 0a                	je     0x42b418
42b40e:	83 ee 41             	sub    $0x41,%esi
42b411:	74 05                	je     0x42b418
42b413:	83 ee 04             	sub    $0x4,%esi
42b416:	eb 22                	jmp    0x42b43a
42b418:	ff 75 30             	push   0x30(%ebp)
42b41b:	53                   	push   %ebx
42b41c:	50                   	push   %eax
42b41d:	ff 75 fc             	push   -0x4(%ebp)
42b420:	ff 75 20             	push   0x20(%ebp)
42b423:	ff 75 18             	push   0x18(%ebp)
42b426:	ff 75 14             	push   0x14(%ebp)
42b429:	ff 75 10             	push   0x10(%ebp)
42b42c:	57                   	push   %edi
42b42d:	ff 75 08             	push   0x8(%ebp)
42b430:	e8 12 f6 ff ff       	call   0x42aa47
42b435:	eb 5c                	jmp    0x42b493
42b437:	83 ee 65             	sub    $0x65,%esi
42b43a:	ff 75 30             	push   0x30(%ebp)
42b43d:	53                   	push   %ebx
42b43e:	74 3a                	je     0x42b47a
42b440:	83 ee 01             	sub    $0x1,%esi
42b443:	74 1b                	je     0x42b460
42b445:	50                   	push   %eax
42b446:	ff 75 fc             	push   -0x4(%ebp)
42b449:	ff 75 20             	push   0x20(%ebp)
42b44c:	ff 75 18             	push   0x18(%ebp)
42b44f:	ff 75 14             	push   0x14(%ebp)
42b452:	ff 75 10             	push   0x10(%ebp)
42b455:	57                   	push   %edi
42b456:	ff 75 08             	push   0x8(%ebp)
42b459:	e8 91 fc ff ff       	call   0x42b0ef
42b45e:	eb 33                	jmp    0x42b493
42b460:	ff 75 20             	push   0x20(%ebp)
42b463:	ff 75 18             	push   0x18(%ebp)
42b466:	ff 75 14             	push   0x14(%ebp)
42b469:	ff 75 10             	push   0x10(%ebp)
42b46c:	57                   	push   %edi
42b46d:	ff 75 08             	push   0x8(%ebp)
42b470:	e8 f6 fa ff ff       	call   0x42af6b
42b475:	83 c4 20             	add    $0x20,%esp
42b478:	eb 1c                	jmp    0x42b496
42b47a:	50                   	push   %eax
42b47b:	ff 75 fc             	push   -0x4(%ebp)
42b47e:	ff 75 20             	push   0x20(%ebp)
42b481:	ff 75 18             	push   0x18(%ebp)
42b484:	ff 75 14             	push   0x14(%ebp)
42b487:	ff 75 10             	push   0x10(%ebp)
42b48a:	57                   	push   %edi
42b48b:	ff 75 08             	push   0x8(%ebp)
42b48e:	e8 e1 f8 ff ff       	call   0x42ad74
42b493:	83 c4 28             	add    $0x28,%esp
42b496:	5f                   	pop    %edi
42b497:	5e                   	pop    %esi
42b498:	5b                   	pop    %ebx
42b499:	c9                   	leave
42b49a:	c3                   	ret
42b49b:	8b ff                	mov    %edi,%edi
42b49d:	55                   	push   %ebp
42b49e:	8b ec                	mov    %esp,%ebp
42b4a0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42b4a3:	83 ec 0c             	sub    $0xc,%esp
42b4a6:	8b 45 10             	mov    0x10(%ebp),%eax
42b4a9:	53                   	push   %ebx
42b4aa:	56                   	push   %esi
42b4ab:	57                   	push   %edi
42b4ac:	85 c9                	test   %ecx,%ecx
42b4ae:	75 17                	jne    0x42b4c7
42b4b0:	85 c0                	test   %eax,%eax
42b4b2:	74 13                	je     0x42b4c7
42b4b4:	8b 45 08             	mov    0x8(%ebp),%eax
42b4b7:	85 c0                	test   %eax,%eax
42b4b9:	0f 84 ff 00 00 00    	je     0x42b5be
42b4bf:	83 20 00             	andl   $0x0,(%eax)
42b4c2:	e9 f7 00 00 00       	jmp    0x42b5be
42b4c7:	8b 5d 08             	mov    0x8(%ebp),%ebx
42b4ca:	85 db                	test   %ebx,%ebx
42b4cc:	74 03                	je     0x42b4d1
42b4ce:	83 0b ff             	orl    $0xffffffff,(%ebx)
42b4d1:	8b 75 18             	mov    0x18(%ebp),%esi
42b4d4:	33 ff                	xor    %edi,%edi
42b4d6:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
42b4db:	76 07                	jbe    0x42b4e4
42b4dd:	6a 16                	push   $0x16
42b4df:	e9 04 01 00 00       	jmp    0x42b5e8
42b4e4:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
42b4e8:	75 0d                	jne    0x42b4f7
42b4ea:	8b ce                	mov    %esi,%ecx
42b4ec:	e8 8f 41 ff ff       	call   0x41f680
42b4f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42b4f4:	8b 45 10             	mov    0x10(%ebp),%eax
42b4f7:	8b 56 0c             	mov    0xc(%esi),%edx
42b4fa:	8b 5a 08             	mov    0x8(%edx),%ebx
42b4fd:	81 fb e9 fd 00 00    	cmp    $0xfde9,%ebx
42b503:	89 5d f8             	mov    %ebx,-0x8(%ebp)
42b506:	8b 5d 08             	mov    0x8(%ebp),%ebx
42b509:	75 37                	jne    0x42b542
42b50b:	56                   	push   %esi
42b50c:	8d 45 f4             	lea    -0xc(%ebp),%eax
42b50f:	33 ff                	xor    %edi,%edi
42b511:	50                   	push   %eax
42b512:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
42b516:	50                   	push   %eax
42b517:	51                   	push   %ecx
42b518:	89 7d f4             	mov    %edi,-0xc(%ebp)
42b51b:	89 7d f8             	mov    %edi,-0x8(%ebp)
42b51e:	e8 53 bf 00 00       	call   0x437476
42b523:	83 c4 10             	add    $0x10,%esp
42b526:	85 db                	test   %ebx,%ebx
42b528:	74 02                	je     0x42b52c
42b52a:	89 03                	mov    %eax,(%ebx)
42b52c:	83 f8 04             	cmp    $0x4,%eax
42b52f:	0f 8e 89 00 00 00    	jle    0x42b5be
42b535:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
42b539:	74 03                	je     0x42b53e
42b53b:	8b 7e 18             	mov    0x18(%esi),%edi
42b53e:	8b c7                	mov    %edi,%eax
42b540:	eb 36                	jmp    0x42b578
42b542:	39 ba a8 00 00 00    	cmp    %edi,0xa8(%edx)
42b548:	75 49                	jne    0x42b593
42b54a:	66 8b 55 14          	mov    0x14(%ebp),%dx
42b54e:	c7 45 fc ff 00 00 00 	movl   $0xff,-0x4(%ebp)
42b555:	66 3b 55 fc          	cmp    -0x4(%ebp),%dx
42b559:	76 22                	jbe    0x42b57d
42b55b:	85 c9                	test   %ecx,%ecx
42b55d:	74 0f                	je     0x42b56e
42b55f:	85 c0                	test   %eax,%eax
42b561:	74 0b                	je     0x42b56e
42b563:	50                   	push   %eax
42b564:	57                   	push   %edi
42b565:	51                   	push   %ecx
42b566:	e8 a5 06 ff ff       	call   0x41bc10
42b56b:	83 c4 0c             	add    $0xc,%esp
42b56e:	6a 2a                	push   $0x2a
42b570:	58                   	pop    %eax
42b571:	89 46 18             	mov    %eax,0x18(%esi)
42b574:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
42b578:	5f                   	pop    %edi
42b579:	5e                   	pop    %esi
42b57a:	5b                   	pop    %ebx
42b57b:	c9                   	leave
42b57c:	c3                   	ret
42b57d:	85 c9                	test   %ecx,%ecx
42b57f:	74 06                	je     0x42b587
42b581:	85 c0                	test   %eax,%eax
42b583:	74 61                	je     0x42b5e6
42b585:	88 11                	mov    %dl,(%ecx)
42b587:	85 db                	test   %ebx,%ebx
42b589:	74 33                	je     0x42b5be
42b58b:	c7 03 01 00 00 00    	movl   $0x1,(%ebx)
42b591:	eb 2b                	jmp    0x42b5be
42b593:	8d 55 fc             	lea    -0x4(%ebp),%edx
42b596:	89 7d fc             	mov    %edi,-0x4(%ebp)
42b599:	52                   	push   %edx
42b59a:	57                   	push   %edi
42b59b:	50                   	push   %eax
42b59c:	51                   	push   %ecx
42b59d:	6a 01                	push   $0x1
42b59f:	8d 45 14             	lea    0x14(%ebp),%eax
42b5a2:	50                   	push   %eax
42b5a3:	57                   	push   %edi
42b5a4:	ff 75 f8             	push   -0x8(%ebp)
42b5a7:	e8 1e 68 00 00       	call   0x431dca
42b5ac:	83 c4 20             	add    $0x20,%esp
42b5af:	85 c0                	test   %eax,%eax
42b5b1:	74 0f                	je     0x42b5c2
42b5b3:	39 7d fc             	cmp    %edi,-0x4(%ebp)
42b5b6:	75 b6                	jne    0x42b56e
42b5b8:	85 db                	test   %ebx,%ebx
42b5ba:	74 02                	je     0x42b5be
42b5bc:	89 03                	mov    %eax,(%ebx)
42b5be:	33 c0                	xor    %eax,%eax
42b5c0:	eb b6                	jmp    0x42b578
42b5c2:	ff 15 6c e0 43 00    	call   *0x43e06c
42b5c8:	83 f8 7a             	cmp    $0x7a,%eax
42b5cb:	75 a1                	jne    0x42b56e
42b5cd:	8b 45 0c             	mov    0xc(%ebp),%eax
42b5d0:	85 c0                	test   %eax,%eax
42b5d2:	74 12                	je     0x42b5e6
42b5d4:	39 7d 10             	cmp    %edi,0x10(%ebp)
42b5d7:	76 0d                	jbe    0x42b5e6
42b5d9:	ff 75 10             	push   0x10(%ebp)
42b5dc:	57                   	push   %edi
42b5dd:	50                   	push   %eax
42b5de:	e8 2d 06 ff ff       	call   0x41bc10
42b5e3:	83 c4 0c             	add    $0xc,%esp
42b5e6:	6a 22                	push   $0x22
42b5e8:	5b                   	pop    %ebx
42b5e9:	56                   	push   %esi
42b5ea:	57                   	push   %edi
42b5eb:	57                   	push   %edi
42b5ec:	57                   	push   %edi
42b5ed:	57                   	push   %edi