5940c0:	b8 08 00 00 00       	mov    $0x8,%eax
5940c5:	e8 e6 d6 03 00       	call   0x5d17b0
5940ca:	8b 44 24 10          	mov    0x10(%esp),%eax
5940ce:	53                   	push   %ebx
5940cf:	56                   	push   %esi
5940d0:	8b 74 24 14          	mov    0x14(%esp),%esi
5940d4:	6a 00                	push   $0x0
5940d6:	6a 00                	push   $0x0
5940d8:	ff 74 24 24          	push   0x24(%esp)
5940dc:	8b 1e                	mov    (%esi),%ebx
5940de:	68 00 03 00 00       	push   $0x300
5940e3:	6a 11                	push   $0x11
5940e5:	56                   	push   %esi
5940e6:	89 06                	mov    %eax,(%esi)
5940e8:	e8 b3 1a 01 00       	call   0x5a5ba0
5940ed:	83 c4 18             	add    $0x18,%esp
5940f0:	85 c0                	test   %eax,%eax
5940f2:	75 08                	jne    0x5940fc
5940f4:	89 1e                	mov    %ebx,(%esi)
5940f6:	5e                   	pop    %esi
5940f7:	5b                   	pop    %ebx
5940f8:	83 c4 08             	add    $0x8,%esp
5940fb:	c3                   	ret
5940fc:	83 be 4c 04 00 00 00 	cmpl   $0x0,0x44c(%esi)
594103:	74 31                	je     0x594136
594105:	81 3e 04 03 00 00    	cmpl   $0x304,(%esi)
59410b:	74 29                	je     0x594136
59410d:	68 73 07 00 00       	push   $0x773
594112:	68 e0 71 66 00       	push   $0x6671e0
594117:	68 0a 01 00 00       	push   $0x10a
59411c:	68 5f 02 00 00       	push   $0x25f
594121:	6a 46                	push   $0x46
594123:	56                   	push   %esi
594124:	89 1e                	mov    %ebx,(%esi)
594126:	e8 e5 af ff ff       	call   0x58f110
59412b:	83 c4 18             	add    $0x18,%esp
59412e:	33 c0                	xor    %eax,%eax
594130:	5e                   	pop    %esi
594131:	5b                   	pop    %ebx
594132:	83 c4 08             	add    $0x8,%esp
594135:	c3                   	ret
594136:	8b 46 04             	mov    0x4(%esi),%eax
594139:	57                   	push   %edi
59413a:	8b 00                	mov    (%eax),%eax
59413c:	3d 00 00 01 00       	cmp    $0x10000,%eax
594141:	74 2f                	je     0x594172
594143:	3d ff ff 01 00       	cmp    $0x1ffff,%eax
594148:	74 21                	je     0x59416b
59414a:	39 06                	cmp    %eax,(%esi)
59414c:	74 11                	je     0x59415f
59414e:	68 7d 07 00 00       	push   $0x77d
594153:	68 e0 71 66 00       	push   $0x6671e0
594158:	68 0a 01 00 00       	push   $0x10a
59415d:	eb 3f                	jmp    0x59419e
59415f:	5f                   	pop    %edi
594160:	5e                   	pop    %esi
594161:	b8 01 00 00 00       	mov    $0x1,%eax
594166:	5b                   	pop    %ebx
594167:	83 c4 08             	add    $0x8,%esp
59416a:	c3                   	ret
59416b:	bf 90 71 66 00       	mov    $0x667190,%edi
594170:	eb 05                	jmp    0x594177
594172:	bf 48 71 66 00       	mov    $0x667148,%edi
594177:	8d 44 24 10          	lea    0x10(%esp),%eax
59417b:	50                   	push   %eax
59417c:	8d 44 24 1c          	lea    0x1c(%esp),%eax
594180:	50                   	push   %eax
594181:	8d 44 24 24          	lea    0x24(%esp),%eax
594185:	50                   	push   %eax
594186:	56                   	push   %esi
594187:	e8 c4 04 00 00       	call   0x594650
59418c:	83 c4 10             	add    $0x10,%esp
59418f:	85 c0                	test   %eax,%eax
594191:	74 26                	je     0x5941b9
594193:	68 94 07 00 00       	push   $0x794
594198:	68 e0 71 66 00       	push   $0x6671e0
59419d:	50                   	push   %eax
59419e:	68 5f 02 00 00       	push   $0x25f
5941a3:	6a 46                	push   $0x46
5941a5:	56                   	push   %esi
5941a6:	89 1e                	mov    %ebx,(%esi)
5941a8:	e8 63 af ff ff       	call   0x58f110
5941ad:	83 c4 18             	add    $0x18,%esp
5941b0:	33 c0                	xor    %eax,%eax
5941b2:	5f                   	pop    %edi
5941b3:	5e                   	pop    %esi
5941b4:	5b                   	pop    %ebx
5941b5:	83 c4 08             	add    $0x8,%esp
5941b8:	c3                   	ret
5941b9:	8b 46 04             	mov    0x4(%esi),%eax
5941bc:	8b 16                	mov    (%esi),%edx
5941be:	55                   	push   %ebp
5941bf:	8b 40 64             	mov    0x64(%eax),%eax
5941c2:	8b 68 30             	mov    0x30(%eax),%ebp
5941c5:	b8 00 ff 00 00       	mov    $0xff00,%eax
5941ca:	89 44 24 10          	mov    %eax,0x10(%esp)
5941ce:	83 e5 08             	and    $0x8,%ebp
5941d1:	74 25                	je     0x5941f8
5941d3:	81 fa 00 01 00 00    	cmp    $0x100,%edx
5941d9:	8b ca                	mov    %edx,%ecx
5941db:	0f 44 c8             	cmove  %eax,%ecx
5941de:	8b 44 24 20          	mov    0x20(%esp),%eax
5941e2:	3d 00 01 00 00       	cmp    $0x100,%eax
5941e7:	0f 44 44 24 10       	cmove  0x10(%esp),%eax
5941ec:	3b c8                	cmp    %eax,%ecx
5941ee:	b8 00 00 00 00       	mov    $0x0,%eax
5941f3:	0f 9f c0             	setg   %al
5941f6:	eb 09                	jmp    0x594201
5941f8:	33 c0                	xor    %eax,%eax
5941fa:	3b 54 24 20          	cmp    0x20(%esp),%edx
5941fe:	0f 9c c0             	setl   %al
594201:	85 c0                	test   %eax,%eax
594203:	74 0a                	je     0x59420f
594205:	68 9b 07 00 00       	push   $0x79b
59420a:	e9 eb 00 00 00       	jmp    0x5942fa
59420f:	85 ed                	test   %ebp,%ebp
594211:	74 2e                	je     0x594241
594213:	81 fa 00 01 00 00    	cmp    $0x100,%edx
594219:	b8 00 ff 00 00       	mov    $0xff00,%eax
59421e:	8b ca                	mov    %edx,%ecx
594220:	0f 44 c8             	cmove  %eax,%ecx
594223:	8b 44 24 1c          	mov    0x1c(%esp),%eax
594227:	3d 00 01 00 00       	cmp    $0x100,%eax
59422c:	0f 44 44 24 10       	cmove  0x10(%esp),%eax
594231:	3b c8                	cmp    %eax,%ecx
594233:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
594237:	b8 00 00 00 00       	mov    $0x0,%eax
59423c:	0f 9c c0             	setl   %al
59423f:	eb 0b                	jmp    0x59424c
594241:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
594245:	33 c0                	xor    %eax,%eax
594247:	3b d1                	cmp    %ecx,%edx
594249:	0f 9f c0             	setg   %al
59424c:	85 c0                	test   %eax,%eax
59424e:	74 0a                	je     0x59425a
594250:	68 a1 07 00 00       	push   $0x7a1
594255:	e9 a0 00 00 00       	jmp    0x5942fa
59425a:	f6 86 f0 04 00 00 80 	testb  $0x80,0x4f0(%esi)
594261:	8b 44 24 14          	mov    0x14(%esp),%eax
594265:	0f 44 c1             	cmove  %ecx,%eax
594268:	81 fa 03 03 00 00    	cmp    $0x303,%edx
59426e:	75 39                	jne    0x5942a9
594270:	3b c2                	cmp    %edx,%eax
594272:	7e 35                	jle    0x5942a9
594274:	8b 4e 7c             	mov    0x7c(%esi),%ecx
594277:	a1 38 49 66 00       	mov    0x664938,%eax
59427c:	3b 81 a4 00 00 00    	cmp    0xa4(%ecx),%eax
594282:	75 59                	jne    0x5942dd
594284:	a1 3c 49 66 00       	mov    0x66493c,%eax
594289:	3b 81 a8 00 00 00    	cmp    0xa8(%ecx),%eax
59428f:	75 4c                	jne    0x5942dd
594291:	68 b1 07 00 00       	push   $0x7b1
594296:	68 e0 71 66 00       	push   $0x6671e0
59429b:	68 75 01 00 00       	push   $0x175
5942a0:	68 5f 02 00 00       	push   $0x25f
5942a5:	6a 2f                	push   $0x2f
5942a7:	eb 62                	jmp    0x59430b
5942a9:	85 ed                	test   %ebp,%ebp
5942ab:	75 30                	jne    0x5942dd
5942ad:	81 fa 03 03 00 00    	cmp    $0x303,%edx
5942b3:	7d 28                	jge    0x5942dd
5942b5:	3b c2                	cmp    %edx,%eax
5942b7:	7e 24                	jle    0x5942dd
5942b9:	8b 4e 7c             	mov    0x7c(%esi),%ecx
5942bc:	a1 30 49 66 00       	mov    0x664930,%eax
5942c1:	3b 81 a4 00 00 00    	cmp    0xa4(%ecx),%eax
5942c7:	75 14                	jne    0x5942dd
5942c9:	a1 34 49 66 00       	mov    0x664934,%eax
5942ce:	3b 81 a8 00 00 00    	cmp    0xa8(%ecx),%eax
5942d4:	75 07                	jne    0x5942dd
5942d6:	68 be 07 00 00       	push   $0x7be
5942db:	eb b9                	jmp    0x594296
5942dd:	83 3f 00             	cmpl   $0x0,(%edi)
5942e0:	74 13                	je     0x5942f5
5942e2:	8b 47 04             	mov    0x4(%edi),%eax
5942e5:	85 c0                	test   %eax,%eax
5942e7:	74 04                	je     0x5942ed
5942e9:	3b 17                	cmp    (%edi),%edx
5942eb:	74 33                	je     0x594320
5942ed:	83 c7 0c             	add    $0xc,%edi
5942f0:	83 3f 00             	cmpl   $0x0,(%edi)
5942f3:	75 ed                	jne    0x5942e2
5942f5:	68 cd 07 00 00       	push   $0x7cd
5942fa:	68 e0 71 66 00       	push   $0x6671e0
5942ff:	68 02 01 00 00       	push   $0x102
594304:	68 5f 02 00 00       	push   $0x25f
594309:	6a 46                	push   $0x46
59430b:	56                   	push   %esi
59430c:	89 1e                	mov    %ebx,(%esi)
59430e:	e8 fd ad ff ff       	call   0x58f110
594313:	83 c4 18             	add    $0x18,%esp
594316:	33 c0                	xor    %eax,%eax
594318:	5d                   	pop    %ebp
594319:	5f                   	pop    %edi
59431a:	5e                   	pop    %esi
59431b:	5b                   	pop    %ebx
59431c:	83 c4 08             	add    $0x8,%esp
59431f:	c3                   	ret
594320:	ff d0                	call   *%eax
594322:	5d                   	pop    %ebp
594323:	5f                   	pop    %edi
594324:	89 46 04             	mov    %eax,0x4(%esi)
594327:	b8 01 00 00 00       	mov    $0x1,%eax
59432c:	5e                   	pop    %esi
59432d:	5b                   	pop    %ebx
59432e:	83 c4 08             	add    $0x8,%esp
594331:	c3                   	ret
594332:	cc                   	int3
594333:	cc                   	int3
594334:	cc                   	int3
594335:	cc                   	int3
594336:	cc                   	int3
594337:	cc                   	int3
594338:	cc                   	int3
594339:	cc                   	int3
59433a:	cc                   	int3
59433b:	cc                   	int3
59433c:	cc                   	int3
59433d:	cc                   	int3
59433e:	cc                   	int3
59433f:	cc                   	int3
594340:	b8 10 00 00 00       	mov    $0x10,%eax
594345:	e8 66 d4 03 00       	call   0x5d17b0
59434a:	8b 4c 24 18          	mov    0x18(%esp),%ecx
59434e:	53                   	push   %ebx
59434f:	55                   	push   %ebp
594350:	56                   	push   %esi
594351:	8b 69 04             	mov    0x4(%ecx),%ebp
594354:	33 db                	xor    %ebx,%ebx
594356:	57                   	push   %edi
594357:	8b 7c 24 24          	mov    0x24(%esp),%edi
59435b:	89 5c 24 28          	mov    %ebx,0x28(%esp)
59435f:	8b 57 04             	mov    0x4(%edi),%edx
594362:	8b 02                	mov    (%edx),%eax
594364:	89 af 04 05 00 00    	mov    %ebp,0x504(%edi)
59436a:	3d 00 00 01 00       	cmp    $0x10000,%eax
59436f:	74 54                	je     0x5943c5
594371:	3d ff ff 01 00       	cmp    $0x1ffff,%eax
594376:	74 46                	je     0x5943be
594378:	8b 42 64             	mov    0x64(%edx),%eax
59437b:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59437f:	75 10                	jne    0x594391
594381:	8b 02                	mov    (%edx),%eax
594383:	3d 04 03 00 00       	cmp    $0x304,%eax
594388:	7c 07                	jl     0x594391
59438a:	3d 00 00 01 00       	cmp    $0x10000,%eax
59438f:	75 34                	jne    0x5943c5
594391:	ff 37                	push   (%edi)
594393:	55                   	push   %ebp
594394:	57                   	push   %edi
594395:	e8 16 1f 00 00       	call   0x5962b0
59439a:	83 c4 0c             	add    $0xc,%esp
59439d:	85 c0                	test   %eax,%eax
59439f:	79 0d                	jns    0x5943ae
5943a1:	5f                   	pop    %edi
5943a2:	5e                   	pop    %esi
5943a3:	5d                   	pop    %ebp
5943a4:	b8 0a 01 00 00       	mov    $0x10a,%eax
5943a9:	5b                   	pop    %ebx
5943aa:	83 c4 10             	add    $0x10,%esp
5943ad:	c3                   	ret
5943ae:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5943b2:	5f                   	pop    %edi
5943b3:	5e                   	pop    %esi
5943b4:	5d                   	pop    %ebp
5943b5:	89 18                	mov    %ebx,(%eax)
5943b7:	33 c0                	xor    %eax,%eax
5943b9:	5b                   	pop    %ebx
5943ba:	83 c4 10             	add    $0x10,%esp
5943bd:	c3                   	ret
5943be:	be 90 71 66 00       	mov    $0x667190,%esi
5943c3:	eb 05                	jmp    0x5943ca
5943c5:	be 48 71 66 00       	mov    $0x667148,%esi
5943ca:	8b 89 68 02 00 00    	mov    0x268(%ecx),%ecx
5943d0:	81 c1 98 01 00 00    	add    $0x198,%ecx
5943d6:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5943da:	39 59 08             	cmp    %ebx,0x8(%ecx)
5943dd:	75 19                	jne    0x5943f8
5943df:	39 9f 4c 04 00 00    	cmp    %ebx,0x44c(%edi)
5943e5:	0f 84 5f 01 00 00    	je     0x59454a
5943eb:	5f                   	pop    %edi
5943ec:	5e                   	pop    %esi
5943ed:	5d                   	pop    %ebp
5943ee:	b8 02 01 00 00       	mov    $0x102,%eax
5943f3:	5b                   	pop    %ebx
5943f4:	83 c4 10             	add    $0x10,%esp
5943f7:	c3                   	ret
5943f8:	8b 42 64             	mov    0x64(%edx),%eax
5943fb:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5943ff:	0f 85 45 01 00 00    	jne    0x59454a
594405:	c7 41 0c 01 00 00 00 	movl   $0x1,0xc(%ecx)
59440c:	33 db                	xor    %ebx,%ebx
59440e:	8b 71 04             	mov    0x4(%ecx),%esi
594411:	8b 11                	mov    (%ecx),%edx
594413:	89 5c 24 10          	mov    %ebx,0x10(%esp)
594417:	85 f6                	test   %esi,%esi
594419:	0f 84 1e 01 00 00    	je     0x59453d
59441f:	0f b6 0a             	movzbl (%edx),%ecx
594422:	4e                   	dec    %esi
594423:	42                   	inc    %edx
594424:	3b f1                	cmp    %ecx,%esi
594426:	0f 82 11 01 00 00    	jb     0x59453d
59442c:	2b f1                	sub    %ecx,%esi
59442e:	0f 85 09 01 00 00    	jne    0x59453d
594434:	8b 44 24 14          	mov    0x14(%esp),%eax
594438:	8d 3c 0a             	lea    (%edx,%ecx,1),%edi
59443b:	89 38                	mov    %edi,(%eax)
59443d:	8b 7c 24 24          	mov    0x24(%esp),%edi
594441:	89 70 04             	mov    %esi,0x4(%eax)
594444:	81 fd 00 03 00 00    	cmp    $0x300,%ebp
59444a:	7f 0d                	jg     0x594459
59444c:	5f                   	pop    %edi
59444d:	5e                   	pop    %esi
59444e:	5d                   	pop    %ebp
59444f:	b8 24 01 00 00       	mov    $0x124,%eax
594454:	5b                   	pop    %ebx
594455:	83 c4 10             	add    $0x10,%esp
594458:	c3                   	ret
594459:	bd 00 ff 00 00       	mov    $0xff00,%ebp
59445e:	66 90                	xchg   %ax,%ax
594460:	83 f9 02             	cmp    $0x2,%ecx
594463:	0f 82 89 00 00 00    	jb     0x5944f2
594469:	0f b6 32             	movzbl (%edx),%esi
59446c:	83 e9 02             	sub    $0x2,%ecx
59446f:	0f b6 42 01          	movzbl 0x1(%edx),%eax
594473:	83 c2 02             	add    $0x2,%edx
594476:	c1 e6 08             	shl    $0x8,%esi
594479:	0b f0                	or     %eax,%esi
59447b:	89 54 24 28          	mov    %edx,0x28(%esp)
59447f:	89 4c 24 24          	mov    %ecx,0x24(%esp)
594483:	3b f3                	cmp    %ebx,%esi
594485:	74 d9                	je     0x594460
594487:	8b 47 04             	mov    0x4(%edi),%eax
59448a:	8b 40 64             	mov    0x64(%eax),%eax
59448d:	f6 40 30 08          	testb  $0x8,0x30(%eax)
594491:	75 09                	jne    0x59449c
594493:	33 d2                	xor    %edx,%edx
594495:	3b f3                	cmp    %ebx,%esi
594497:	0f 9d c2             	setge  %dl
59449a:	eb 21                	jmp    0x5944bd
59449c:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5944a2:	8b ce                	mov    %esi,%ecx
5944a4:	8b c3                	mov    %ebx,%eax
5944a6:	0f 44 cd             	cmove  %ebp,%ecx
5944a9:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
5944af:	0f 44 c5             	cmove  %ebp,%eax
5944b2:	33 d2                	xor    %edx,%edx
5944b4:	3b c8                	cmp    %eax,%ecx
5944b6:	8b 4c 24 24          	mov    0x24(%esp),%ecx
5944ba:	0f 9e c2             	setle  %dl