5861ef:	83 e9 04             	sub    $0x4,%ecx
5861f2:	72 11                	jb     0x586205
5861f4:	8b 02                	mov    (%edx),%eax
5861f6:	3b 07                	cmp    (%edi),%eax
5861f8:	75 10                	jne    0x58620a
5861fa:	83 c2 04             	add    $0x4,%edx
5861fd:	83 c7 04             	add    $0x4,%edi
586200:	83 e9 04             	sub    $0x4,%ecx
586203:	73 ef                	jae    0x5861f4
586205:	83 f9 fc             	cmp    $0xfffffffc,%ecx
586208:	74 3d                	je     0x586247
58620a:	8a 02                	mov    (%edx),%al
58620c:	3a 07                	cmp    (%edi),%al
58620e:	0f 85 06 02 00 00    	jne    0x58641a
586214:	83 f9 fd             	cmp    $0xfffffffd,%ecx
586217:	74 2e                	je     0x586247
586219:	8a 42 01             	mov    0x1(%edx),%al
58621c:	3a 47 01             	cmp    0x1(%edi),%al
58621f:	0f 85 f5 01 00 00    	jne    0x58641a
586225:	83 f9 fe             	cmp    $0xfffffffe,%ecx
586228:	74 1d                	je     0x586247
58622a:	8a 42 02             	mov    0x2(%edx),%al
58622d:	3a 47 02             	cmp    0x2(%edi),%al
586230:	0f 85 e4 01 00 00    	jne    0x58641a
586236:	83 f9 ff             	cmp    $0xffffffff,%ecx
586239:	74 0c                	je     0x586247
58623b:	8a 42 03             	mov    0x3(%edx),%al
58623e:	3a 47 03             	cmp    0x3(%edi),%al
586241:	0f 85 d3 01 00 00    	jne    0x58641a
586247:	8b 46 1c             	mov    0x1c(%esi),%eax
58624a:	3b 43 2c             	cmp    0x2c(%ebx),%eax
58624d:	72 18                	jb     0x586267
58624f:	77 08                	ja     0x586259
586251:	8b 46 18             	mov    0x18(%esi),%eax
586254:	3b 43 28             	cmp    0x28(%ebx),%eax
586257:	76 0e                	jbe    0x586267
586259:	6a 75                	push   $0x75
58625b:	68 60 d4 65 00       	push   $0x65d460
586260:	6a 74                	push   $0x74
586262:	e9 bc 01 00 00       	jmp    0x586423
586267:	e8 a4 4e f9 ff       	call   0x51b110
58626c:	8b f8                	mov    %eax,%edi
58626e:	85 ff                	test   %edi,%edi
586270:	0f 84 85 01 00 00    	je     0x5863fb
586276:	ff 33                	push   (%ebx)
586278:	6a 00                	push   $0x0
58627a:	e8 b1 02 f9 ff       	call   0x516530
58627f:	50                   	push   %eax
586280:	6a 00                	push   $0x0
586282:	57                   	push   %edi
586283:	e8 98 a9 f9 ff       	call   0x520c20
586288:	83 c4 14             	add    $0x14,%esp
58628b:	85 c0                	test   %eax,%eax
58628d:	0f 84 68 01 00 00    	je     0x5863fb
586293:	8b 4e 34             	mov    0x34(%esi),%ecx
586296:	83 f9 ff             	cmp    $0xffffffff,%ecx
586299:	0f 84 5c 01 00 00    	je     0x5863fb
58629f:	83 f9 01             	cmp    $0x1,%ecx
5862a2:	75 0a                	jne    0x5862ae
5862a4:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
5862a8:	0f 84 4d 01 00 00    	je     0x5863fb
5862ae:	0f b6 06             	movzbl (%esi),%eax
5862b1:	88 44 24 10          	mov    %al,0x10(%esp)
5862b5:	0f b6 46 1f          	movzbl 0x1f(%esi),%eax
5862b9:	88 44 24 12          	mov    %al,0x12(%esp)
5862bd:	0f b6 46 1e          	movzbl 0x1e(%esi),%eax
5862c1:	88 44 24 13          	mov    %al,0x13(%esp)
5862c5:	0f b6 46 1d          	movzbl 0x1d(%esi),%eax
5862c9:	88 44 24 14          	mov    %al,0x14(%esp)
5862cd:	0f b6 46 1c          	movzbl 0x1c(%esi),%eax
5862d1:	88 44 24 15          	mov    %al,0x15(%esp)
5862d5:	0f b6 46 1b          	movzbl 0x1b(%esi),%eax
5862d9:	88 44 24 16          	mov    %al,0x16(%esp)
5862dd:	0f b6 46 1a          	movzbl 0x1a(%esi),%eax
5862e1:	88 44 24 17          	mov    %al,0x17(%esp)
5862e5:	0f b6 46 19          	movzbl 0x19(%esi),%eax
5862e9:	88 44 24 18          	mov    %al,0x18(%esp)
5862ed:	0f b6 46 18          	movzbl 0x18(%esi),%eax
5862f1:	88 44 24 19          	mov    %al,0x19(%esp)
5862f5:	8b c1                	mov    %ecx,%eax
5862f7:	c1 f8 08             	sar    $0x8,%eax
5862fa:	88 44 24 1a          	mov    %al,0x1a(%esp)
5862fe:	8d 44 24 10          	lea    0x10(%esp),%eax
586302:	6a 0c                	push   $0xc
586304:	50                   	push   %eax
586305:	57                   	push   %edi
586306:	c6 44 24 1d 00       	movb   $0x0,0x1d(%esp)
58630b:	88 4c 24 27          	mov    %cl,0x27(%esp)
58630f:	e8 bc 4a f9 ff       	call   0x51add0
586314:	83 c4 0c             	add    $0xc,%esp
586317:	85 c0                	test   %eax,%eax
586319:	0f 84 dc 00 00 00    	je     0x5863fb
58631f:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
586323:	55                   	push   %ebp
586324:	75 08                	jne    0x58632e
586326:	8b 6b 14             	mov    0x14(%ebx),%ebp
586329:	8b 5b 18             	mov    0x18(%ebx),%ebx
58632c:	eb 1d                	jmp    0x58634b
58632e:	ff 73 10             	push   0x10(%ebx)
586331:	ff 73 0c             	push   0xc(%ebx)
586334:	57                   	push   %edi
586335:	e8 96 4a f9 ff       	call   0x51add0
58633a:	83 c4 0c             	add    $0xc,%esp
58633d:	85 c0                	test   %eax,%eax
58633f:	0f 84 b5 00 00 00    	je     0x5863fa
586345:	8b 6b 1c             	mov    0x1c(%ebx),%ebp
586348:	8b 5b 20             	mov    0x20(%ebx),%ebx
58634b:	85 ed                	test   %ebp,%ebp
58634d:	0f 84 a7 00 00 00    	je     0x5863fa
586353:	8b c3                	mov    %ebx,%eax
586355:	88 5c 24 16          	mov    %bl,0x16(%esp)
586359:	c1 e8 10             	shr    $0x10,%eax
58635c:	88 44 24 14          	mov    %al,0x14(%esp)
586360:	8b c3                	mov    %ebx,%eax
586362:	c1 e8 08             	shr    $0x8,%eax
586365:	88 44 24 15          	mov    %al,0x15(%esp)
586369:	8d 44 24 14          	lea    0x14(%esp),%eax
58636d:	6a 03                	push   $0x3
58636f:	50                   	push   %eax
586370:	57                   	push   %edi
586371:	e8 5a 4a f9 ff       	call   0x51add0
586376:	83 c4 0c             	add    $0xc,%esp
586379:	85 c0                	test   %eax,%eax
58637b:	74 7d                	je     0x5863fa
58637d:	53                   	push   %ebx
58637e:	55                   	push   %ebp
58637f:	57                   	push   %edi
586380:	e8 4b 4a f9 ff       	call   0x51add0
586385:	83 c4 0c             	add    $0xc,%esp
586388:	85 c0                	test   %eax,%eax
58638a:	74 6e                	je     0x5863fa
58638c:	0f b6 46 25          	movzbl 0x25(%esi),%eax
586390:	88 44 24 14          	mov    %al,0x14(%esp)
586394:	0f b6 46 24          	movzbl 0x24(%esi),%eax
586398:	88 44 24 15          	mov    %al,0x15(%esp)
58639c:	8d 44 24 14          	lea    0x14(%esp),%eax
5863a0:	6a 02                	push   $0x2
5863a2:	50                   	push   %eax
5863a3:	57                   	push   %edi
5863a4:	e8 27 4a f9 ff       	call   0x51add0
5863a9:	83 c4 0c             	add    $0xc,%esp
5863ac:	85 c0                	test   %eax,%eax
5863ae:	74 4a                	je     0x5863fa
5863b0:	8b 46 24             	mov    0x24(%esi),%eax
5863b3:	85 c0                	test   %eax,%eax
5863b5:	74 11                	je     0x5863c8
5863b7:	50                   	push   %eax
5863b8:	ff 76 20             	push   0x20(%esi)
5863bb:	57                   	push   %edi
5863bc:	e8 0f 4a f9 ff       	call   0x51add0
5863c1:	83 c4 0c             	add    $0xc,%esp
5863c4:	85 c0                	test   %eax,%eax
5863c6:	74 32                	je     0x5863fa
5863c8:	ff 76 30             	push   0x30(%esi)
5863cb:	ff 76 2c             	push   0x2c(%esi)
5863ce:	57                   	push   %edi
5863cf:	e8 1c a7 f9 ff       	call   0x520af0
5863d4:	83 c4 0c             	add    $0xc,%esp
5863d7:	89 44 24 10          	mov    %eax,0x10(%esp)
5863db:	85 c0                	test   %eax,%eax
5863dd:	75 1b                	jne    0x5863fa
5863df:	68 87 00 00 00       	push   $0x87
5863e4:	68 60 d4 65 00       	push   $0x65d460
5863e9:	6a 6b                	push   $0x6b
5863eb:	68 80 00 00 00       	push   $0x80
5863f0:	6a 32                	push   $0x32
5863f2:	e8 89 2b f5 ff       	call   0x4d8f80
5863f7:	83 c4 14             	add    $0x14,%esp
5863fa:	5d                   	pop    %ebp
5863fb:	57                   	push   %edi
5863fc:	e8 ef 4c f9 ff       	call   0x51b0f0
586401:	8b 44 24 10          	mov    0x10(%esp),%eax
586405:	83 c4 04             	add    $0x4,%esp
586408:	5f                   	pop    %edi
586409:	5e                   	pop    %esi
58640a:	5b                   	pop    %ebx
58640b:	8b 4c 24 10          	mov    0x10(%esp),%ecx
58640f:	33 cc                	xor    %esp,%ecx
586411:	e8 10 b6 04 00       	call   0x5d1a26
586416:	83 c4 14             	add    $0x14,%esp
586419:	c3                   	ret
58641a:	6a 71                	push   $0x71
58641c:	68 60 d4 65 00       	push   $0x65d460
586421:	6a 72                	push   $0x72
586423:	68 80 00 00 00       	push   $0x80
586428:	6a 32                	push   $0x32
58642a:	e8 51 2b f5 ff       	call   0x4d8f80
58642f:	8b 4c 24 30          	mov    0x30(%esp),%ecx
586433:	83 c4 14             	add    $0x14,%esp
586436:	33 c0                	xor    %eax,%eax
586438:	5f                   	pop    %edi
586439:	5e                   	pop    %esi
58643a:	5b                   	pop    %ebx
58643b:	33 cc                	xor    %esp,%ecx
58643d:	e8 e4 b5 04 00       	call   0x5d1a26
586442:	83 c4 14             	add    $0x14,%esp
586445:	c3                   	ret
586446:	6a 68                	push   $0x68
586448:	68 60 d4 65 00       	push   $0x65d460
58644d:	6a 6a                	push   $0x6a
58644f:	e9 66 fd ff ff       	jmp    0x5861ba
586454:	cc                   	int3
586455:	cc                   	int3
586456:	cc                   	int3
586457:	cc                   	int3
586458:	cc                   	int3
586459:	cc                   	int3
58645a:	cc                   	int3
58645b:	cc                   	int3
58645c:	cc                   	int3
58645d:	cc                   	int3
58645e:	cc                   	int3
58645f:	cc                   	int3
586460:	83 3d d8 6b 69 00 00 	cmpl   $0x0,0x696bd8
586467:	56                   	push   %esi
586468:	74 32                	je     0x58649c
58646a:	83 3d f4 6b 69 00 00 	cmpl   $0x0,0x696bf4
586471:	75 25                	jne    0x586498
586473:	68 c1 00 00 00       	push   $0xc1
586478:	68 74 d4 65 00       	push   $0x65d474
58647d:	6a 46                	push   $0x46
58647f:	68 56 01 00 00       	push   $0x156
586484:	6a 14                	push   $0x14
586486:	c7 05 f4 6b 69 00 01 	movl   $0x1,0x696bf4
58648d:	00 00 00
586490:	e8 eb 2a f5 ff       	call   0x4d8f80
586495:	83 c4 14             	add    $0x14,%esp
586498:	33 c0                	xor    %eax,%eax
58649a:	5e                   	pop    %esi
58649b:	c3                   	ret
58649c:	8b 74 24 08          	mov    0x8(%esp),%esi
5864a0:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
5864a4:	83 ce 0c             	or     $0xc,%esi
5864a7:	8b c6                	mov    %esi,%eax
5864a9:	25 80 00 00 00       	and    $0x80,%eax
5864ae:	83 c8 00             	or     $0x0,%eax
5864b1:	75 03                	jne    0x5864b6
5864b3:	83 ce 40             	or     $0x40,%esi
5864b6:	ff 74 24 10          	push   0x10(%esp)
5864ba:	51                   	push   %ecx
5864bb:	56                   	push   %esi
5864bc:	e8 2f a6 f5 ff       	call   0x4e0af0
5864c1:	83 c4 0c             	add    $0xc,%esp
5864c4:	85 c0                	test   %eax,%eax
5864c6:	74 d0                	je     0x586498
5864c8:	68 20 67 58 00       	push   $0x586720
5864cd:	68 dc 6b 69 00       	push   $0x696bdc
5864d2:	e8 f9 ba f5 ff       	call   0x4e1fd0
5864d7:	83 c4 08             	add    $0x8,%esp
5864da:	f7 d8                	neg    %eax
5864dc:	1b c0                	sbb    %eax,%eax
5864de:	85 05 e4 6b 69 00    	test   %eax,0x696be4
5864e4:	74 b2                	je     0x586498
5864e6:	8b c6                	mov    %esi,%eax
5864e8:	25 00 00 10 00       	and    $0x100000,%eax
5864ed:	83 c8 00             	or     $0x0,%eax
5864f0:	74 1e                	je     0x586510
5864f2:	68 70 65 58 00       	push   $0x586570
5864f7:	68 e8 6b 69 00       	push   $0x696be8
5864fc:	e8 cf ba f5 ff       	call   0x4e1fd0
586501:	83 c4 08             	add    $0x8,%esp
586504:	f7 d8                	neg    %eax
586506:	1b c0                	sbb    %eax,%eax
586508:	85 05 f0 6b 69 00    	test   %eax,0x696bf0
58650e:	74 88                	je     0x586498
586510:	81 e6 00 00 20 00    	and    $0x200000,%esi
586516:	83 ce 00             	or     $0x0,%esi
586519:	74 22                	je     0x58653d
58651b:	68 50 65 58 00       	push   $0x586550
586520:	68 e8 6b 69 00       	push   $0x696be8
586525:	e8 a6 ba f5 ff       	call   0x4e1fd0
58652a:	83 c4 08             	add    $0x8,%esp
58652d:	f7 d8                	neg    %eax
58652f:	1b c0                	sbb    %eax,%eax
586531:	85 05 f0 6b 69 00    	test   %eax,0x696bf0
586537:	0f 84 5b ff ff ff    	je     0x586498
58653d:	b8 01 00 00 00       	mov    $0x1,%eax
586542:	5e                   	pop    %esi
586543:	c3                   	ret
586544:	cc                   	int3
586545:	cc                   	int3
586546:	cc                   	int3
586547:	cc                   	int3
586548:	cc                   	int3
586549:	cc                   	int3
58654a:	cc                   	int3
58654b:	cc                   	int3
58654c:	cc                   	int3
58654d:	cc                   	int3
58654e:	cc                   	int3
58654f:	cc                   	int3
586550:	e8 0b 02 00 00       	call   0x586760
586555:	c7 05 ec 6b 69 00 01 	movl   $0x1,0x696bec
58655c:	00 00 00
58655f:	c7 05 f0 6b 69 00 01 	movl   $0x1,0x696bf0
586566:	00 00 00
586569:	c3                   	ret
58656a:	cc                   	int3
58656b:	cc                   	int3
58656c:	cc                   	int3
58656d:	cc                   	int3
58656e:	cc                   	int3
58656f:	cc                   	int3
586570:	c7 05 f0 6b 69 00 01 	movl   $0x1,0x696bf0
586577:	00 00 00
58657a:	c3                   	ret
58657b:	cc                   	int3
58657c:	cc                   	int3
58657d:	cc                   	int3
58657e:	cc                   	int3
58657f:	cc                   	int3
586580:	e8 7b af f8 ff       	call   0x511500
586585:	50                   	push   %eax
586586:	e8 65 a3 f6 ff       	call   0x4f08f0
58658b:	e8 c0 b9 f8 ff       	call   0x511f50
586590:	50                   	push   %eax
586591:	e8 5a a3 f6 ff       	call   0x4f08f0
586596:	e8 e5 bb f8 ff       	call   0x512180
58659b:	50                   	push   %eax
58659c:	e8 4f a3 f6 ff       	call   0x4f08f0
5865a1:	e8 4a c0 f8 ff       	call   0x5125f0
5865a6:	50                   	push   %eax
5865a7:	e8 44 a3 f6 ff       	call   0x4f08f0
5865ac:	e8 3f 91 f5 ff       	call   0x4df6f0
5865b1:	50                   	push   %eax
5865b2:	e8 39 a3 f6 ff       	call   0x4f08f0
5865b7:	e8 b4 92 f5 ff       	call   0x4df870
5865bc:	50                   	push   %eax
5865bd:	e8 2e a3 f6 ff       	call   0x4f08f0
5865c2:	e8 09 94 f5 ff       	call   0x4df9d0
5865c7:	50                   	push   %eax
5865c8:	e8 23 a3 f6 ff       	call   0x4f08f0
5865cd:	e8 fe 91 f5 ff       	call   0x4df7d0
5865d2:	50                   	push   %eax
5865d3:	e8 18 a3 f6 ff       	call   0x4f08f0
5865d8:	e8 d3 94 f5 ff       	call   0x4dfab0
5865dd:	50                   	push   %eax
5865de:	e8 0d a3 f6 ff       	call   0x4f08f0
5865e3:	e8 28 91 f5 ff       	call   0x4df710
5865e8:	50                   	push   %eax
5865e9:	e8 02 a3 f6 ff       	call   0x4f08f0
5865ee:	e8 fd 93 f5 ff       	call   0x4df9f0
5865f3:	50                   	push   %eax
5865f4:	e8 f7 a2 f6 ff       	call   0x4f08f0
5865f9:	e8 82 96 ec ff       	call   0x44fc80
5865fe:	50                   	push   %eax
5865ff:	e8 ec a2 f6 ff       	call   0x4f08f0
586604:	e8 77 96 ec ff       	call   0x44fc80
586609:	50                   	push   %eax
58660a:	e8 e1 a2 f6 ff       	call   0x4f08f0