5d8304:	b8 af 15 66 00       	mov    $0x6615af,%eax
5d8309:	e8 e1 9c 00 00       	call   0x5e1fef
5d830e:	0f b7 4d 1c          	movzwl 0x1c(%ebp),%ecx
5d8312:	8b 45 08             	mov    0x8(%ebp),%eax
5d8315:	89 8d 78 ff ff ff    	mov    %ecx,-0x88(%ebp)
5d831b:	0f b7 4d 3c          	movzwl 0x3c(%ebp),%ecx
5d831f:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
5d8325:	8b 45 18             	mov    0x18(%ebp),%eax
5d8328:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
5d832e:	89 8d 70 ff ff ff    	mov    %ecx,-0x90(%ebp)
5d8334:	ff 70 30             	push   0x30(%eax)
5d8337:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
5d833b:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
5d8341:	e8 0a 16 e6 ff       	call   0x439950
5d8346:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
5d834a:	74 17                	je     0x5d8363
5d834c:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
5d8352:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5d8356:	50                   	push   %eax
5d8357:	e8 ee 92 ff ff       	call   0x5d164a
5d835c:	8b f8                	mov    %eax,%edi
5d835e:	89 7d 8c             	mov    %edi,-0x74(%ebp)
5d8361:	eb 15                	jmp    0x5d8378
5d8363:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
5d8369:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
5d836d:	50                   	push   %eax
5d836e:	e8 6c 93 ff ff       	call   0x5d16df
5d8373:	8b f8                	mov    %eax,%edi
5d8375:	89 45 8c             	mov    %eax,-0x74(%ebp)
5d8378:	59                   	pop    %ecx
5d8379:	8d 8d 64 ff ff ff    	lea    -0x9c(%ebp),%ecx
5d837f:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
5d8383:	e8 18 16 e6 ff       	call   0x4399a0
5d8388:	8b 07                	mov    (%edi),%eax
5d838a:	8b 70 14             	mov    0x14(%eax),%esi
5d838d:	8d 45 c0             	lea    -0x40(%ebp),%eax
5d8390:	50                   	push   %eax
5d8391:	8b ce                	mov    %esi,%ecx
5d8393:	ff 15 e0 24 68 00    	call   *0x6824e0
5d8399:	8b cf                	mov    %edi,%ecx
5d839b:	ff d6                	call   *%esi
5d839d:	8b cf                	mov    %edi,%ecx
5d839f:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5d83a3:	e8 55 4d 00 00       	call   0x5dd0fd
5d83a8:	99                   	cltd
5d83a9:	8b f8                	mov    %eax,%edi
5d83ab:	33 fa                	xor    %edx,%edi
5d83ad:	2b fa                	sub    %edx,%edi
5d83af:	89 bd 7c ff ff ff    	mov    %edi,-0x84(%ebp)
5d83b5:	39 7d 34             	cmp    %edi,0x34(%ebp)
5d83b8:	77 19                	ja     0x5d83d3
5d83ba:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
5d83c0:	8b c7                	mov    %edi,%eax
5d83c2:	8d 4d 24             	lea    0x24(%ebp),%ecx
5d83c5:	2b 45 34             	sub    0x34(%ebp),%eax
5d83c8:	40                   	inc    %eax
5d83c9:	50                   	push   %eax
5d83ca:	6a 00                	push   $0x0
5d83cc:	e8 ec 4d 00 00       	call   0x5dd1bd
5d83d1:	eb 76                	jmp    0x5d8449
5d83d3:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
5d83d7:	8d 45 c0             	lea    -0x40(%ebp),%eax
5d83da:	72 03                	jb     0x5d83df
5d83dc:	8b 45 c0             	mov    -0x40(%ebp),%eax
5d83df:	80 38 7f             	cmpb   $0x7f,(%eax)
5d83e2:	74 65                	je     0x5d8449
5d83e4:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
5d83e8:	8d 45 c0             	lea    -0x40(%ebp),%eax
5d83eb:	72 03                	jb     0x5d83f0
5d83ed:	8b 45 c0             	mov    -0x40(%ebp),%eax
5d83f0:	80 38 00             	cmpb   $0x0,(%eax)
5d83f3:	7e 54                	jle    0x5d8449
5d83f5:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d83f8:	e8 37 50 00 00       	call   0x5dd434
5d83fd:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
5d8401:	8d 7d c0             	lea    -0x40(%ebp),%edi
5d8404:	0f b7 c8             	movzwl %ax,%ecx
5d8407:	89 4d 84             	mov    %ecx,-0x7c(%ebp)
5d840a:	72 03                	jb     0x5d840f
5d840c:	8b 7d c0             	mov    -0x40(%ebp),%edi
5d840f:	8b 75 34             	mov    0x34(%ebp),%esi
5d8412:	2b b5 7c ff ff ff    	sub    -0x84(%ebp),%esi
5d8418:	8a 07                	mov    (%edi),%al
5d841a:	3c 7f                	cmp    $0x7f,%al
5d841c:	74 25                	je     0x5d8443
5d841e:	84 c0                	test   %al,%al
5d8420:	7e 21                	jle    0x5d8443
5d8422:	0f be c0             	movsbl %al,%eax
5d8425:	3b c6                	cmp    %esi,%eax
5d8427:	73 1a                	jae    0x5d8443
5d8429:	51                   	push   %ecx
5d842a:	2b f0                	sub    %eax,%esi
5d842c:	8d 4d 24             	lea    0x24(%ebp),%ecx
5d842f:	6a 01                	push   $0x1
5d8431:	56                   	push   %esi
5d8432:	e8 86 4d 00 00       	call   0x5dd1bd
5d8437:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
5d843b:	7e 01                	jle    0x5d843e
5d843d:	47                   	inc    %edi
5d843e:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
5d8441:	eb d5                	jmp    0x5d8418
5d8443:	8b bd 7c ff ff ff    	mov    -0x84(%ebp),%edi
5d8449:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
5d844d:	33 c0                	xor    %eax,%eax
5d844f:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
5d8456:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
5d845a:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
5d845e:	8b 45 8c             	mov    -0x74(%ebp),%eax
5d8461:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
5d8465:	8b 30                	mov    (%eax),%esi
5d8467:	8d 45 84             	lea    -0x7c(%ebp),%eax
5d846a:	50                   	push   %eax
5d846b:	74 23                	je     0x5d8490
5d846d:	8b 76 2c             	mov    0x2c(%esi),%esi
5d8470:	8b ce                	mov    %esi,%ecx
5d8472:	ff 15 e0 24 68 00    	call   *0x6824e0
5d8478:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d847b:	ff d6                	call   *%esi
5d847d:	8b 45 84             	mov    -0x7c(%ebp),%eax
5d8480:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5d8486:	8b 45 8c             	mov    -0x74(%ebp),%eax
5d8489:	8b 00                	mov    (%eax),%eax
5d848b:	8b 70 20             	mov    0x20(%eax),%esi
5d848e:	eb 21                	jmp    0x5d84b1
5d8490:	8b 76 28             	mov    0x28(%esi),%esi
5d8493:	8b ce                	mov    %esi,%ecx
5d8495:	ff 15 e0 24 68 00    	call   *0x6824e0
5d849b:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d849e:	ff d6                	call   *%esi
5d84a0:	8b 45 84             	mov    -0x7c(%ebp),%eax
5d84a3:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
5d84a9:	8b 45 8c             	mov    -0x74(%ebp),%eax
5d84ac:	8b 00                	mov    (%eax),%eax
5d84ae:	8b 70 1c             	mov    0x1c(%eax),%esi
5d84b1:	8d 45 90             	lea    -0x70(%ebp),%eax
5d84b4:	8b ce                	mov    %esi,%ecx
5d84b6:	50                   	push   %eax
5d84b7:	ff 15 e0 24 68 00    	call   *0x6824e0
5d84bd:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d84c0:	ff d6                	call   *%esi
5d84c2:	c6 45 84 00          	movb   $0x0,-0x7c(%ebp)
5d84c6:	8d 45 90             	lea    -0x70(%ebp),%eax
5d84c9:	ff 75 84             	push   -0x7c(%ebp)
5d84cc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5d84cf:	50                   	push   %eax
5d84d0:	e8 fd fc ff ff       	call   0x5d81d2
5d84d5:	8d 4d 90             	lea    -0x70(%ebp),%ecx
5d84d8:	e8 16 0a 00 00       	call   0x5d8ef3
5d84dd:	83 65 b8 00          	andl   $0x0,-0x48(%ebp)
5d84e1:	33 c0                	xor    %eax,%eax
5d84e3:	c7 45 bc 07 00 00 00 	movl   $0x7,-0x44(%ebp)
5d84ea:	66 89 45 a8          	mov    %ax,-0x58(%ebp)
5d84ee:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
5d84f4:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
5d84f8:	f6 40 14 08          	testb  $0x8,0x14(%eax)
5d84fc:	74 34                	je     0x5d8532
5d84fe:	8b 45 8c             	mov    -0x74(%ebp),%eax
5d8501:	8d 4d 90             	lea    -0x70(%ebp),%ecx
5d8504:	51                   	push   %ecx
5d8505:	8b 00                	mov    (%eax),%eax
5d8507:	8b 70 18             	mov    0x18(%eax),%esi
5d850a:	8b ce                	mov    %esi,%ecx
5d850c:	ff 15 e0 24 68 00    	call   *0x6824e0
5d8512:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d8515:	ff d6                	call   *%esi
5d8517:	c6 45 84 00          	movb   $0x0,-0x7c(%ebp)
5d851b:	8d 45 90             	lea    -0x70(%ebp),%eax
5d851e:	ff 75 84             	push   -0x7c(%ebp)
5d8521:	8d 4d a8             	lea    -0x58(%ebp),%ecx
5d8524:	50                   	push   %eax
5d8525:	e8 a8 fc ff ff       	call   0x5d81d2
5d852a:	8d 4d 90             	lea    -0x70(%ebp),%ecx
5d852d:	e8 c1 09 00 00       	call   0x5d8ef3
5d8532:	32 d2                	xor    %dl,%dl
5d8534:	33 c9                	xor    %ecx,%ecx
5d8536:	88 55 8b             	mov    %dl,-0x75(%ebp)
5d8539:	33 f6                	xor    %esi,%esi
5d853b:	0f be 84 35 74 ff ff 	movsbl -0x8c(%ebp,%esi,1),%eax
5d8542:	ff
5d8543:	83 e8 20             	sub    $0x20,%eax
5d8546:	74 44                	je     0x5d858c
5d8548:	83 e8 04             	sub    $0x4,%eax
5d854b:	74 3a                	je     0x5d8587
5d854d:	83 e8 07             	sub    $0x7,%eax
5d8550:	74 30                	je     0x5d8582
5d8552:	83 e8 4b             	sub    $0x4b,%eax
5d8555:	74 08                	je     0x5d855f
5d8557:	48                   	dec    %eax
5d8558:	83 e8 01             	sub    $0x1,%eax
5d855b:	74 30                	je     0x5d858d
5d855d:	eb 38                	jmp    0x5d8597
5d855f:	39 7d 34             	cmp    %edi,0x34(%ebp)
5d8562:	77 08                	ja     0x5d856c
5d8564:	8b d7                	mov    %edi,%edx
5d8566:	2b 55 34             	sub    0x34(%ebp),%edx
5d8569:	42                   	inc    %edx
5d856a:	eb 02                	jmp    0x5d856e
5d856c:	33 d2                	xor    %edx,%edx
5d856e:	33 c0                	xor    %eax,%eax
5d8570:	3b c7                	cmp    %edi,%eax
5d8572:	1b c0                	sbb    %eax,%eax
5d8574:	f7 d8                	neg    %eax
5d8576:	03 45 34             	add    0x34(%ebp),%eax
5d8579:	03 c2                	add    %edx,%eax
5d857b:	8a 55 8b             	mov    -0x75(%ebp),%dl
5d857e:	03 c8                	add    %eax,%ecx
5d8580:	eb 15                	jmp    0x5d8597
5d8582:	03 4d e8             	add    -0x18(%ebp),%ecx
5d8585:	eb 10                	jmp    0x5d8597
5d8587:	03 4d b8             	add    -0x48(%ebp),%ecx
5d858a:	eb 0b                	jmp    0x5d8597
5d858c:	41                   	inc    %ecx
5d858d:	83 fe 03             	cmp    $0x3,%esi
5d8590:	74 05                	je     0x5d8597
5d8592:	b2 01                	mov    $0x1,%dl
5d8594:	88 55 8b             	mov    %dl,-0x75(%ebp)
5d8597:	46                   	inc    %esi
5d8598:	83 fe 04             	cmp    $0x4,%esi
5d859b:	72 9e                	jb     0x5d853b
5d859d:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
5d85a3:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
5d85a7:	7c 13                	jl     0x5d85bc
5d85a9:	7f 06                	jg     0x5d85b1
5d85ab:	83 78 20 00          	cmpl   $0x0,0x20(%eax)
5d85af:	76 0b                	jbe    0x5d85bc
5d85b1:	8b 70 20             	mov    0x20(%eax),%esi
5d85b4:	3b f1                	cmp    %ecx,%esi
5d85b6:	76 04                	jbe    0x5d85bc
5d85b8:	2b f1                	sub    %ecx,%esi
5d85ba:	eb 02                	jmp    0x5d85be
5d85bc:	33 f6                	xor    %esi,%esi
5d85be:	8b 40 14             	mov    0x14(%eax),%eax
5d85c1:	25 c0 01 00 00       	and    $0x1c0,%eax
5d85c6:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
5d85cc:	83 f8 40             	cmp    $0x40,%eax
5d85cf:	74 33                	je     0x5d8604
5d85d1:	3d 00 01 00 00       	cmp    $0x100,%eax
5d85d6:	75 04                	jne    0x5d85dc
5d85d8:	84 d2                	test   %dl,%dl
5d85da:	75 28                	jne    0x5d8604
5d85dc:	56                   	push   %esi
5d85dd:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
5d85e3:	8d 45 80             	lea    -0x80(%ebp),%eax
5d85e6:	ff 75 10             	push   0x10(%ebp)
5d85e9:	ff 75 0c             	push   0xc(%ebp)
5d85ec:	50                   	push   %eax
5d85ed:	e8 35 08 00 00       	call   0x5d8e27
5d85f2:	83 c4 14             	add    $0x14,%esp
5d85f5:	33 f6                	xor    %esi,%esi
5d85f7:	8b 08                	mov    (%eax),%ecx
5d85f9:	89 4d 0c             	mov    %ecx,0xc(%ebp)
5d85fc:	8b 50 04             	mov    0x4(%eax),%edx
5d85ff:	89 55 10             	mov    %edx,0x10(%ebp)
5d8602:	eb 06                	jmp    0x5d860a
5d8604:	8b 55 10             	mov    0x10(%ebp),%edx
5d8607:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5d860a:	33 c0                	xor    %eax,%eax
5d860c:	89 45 84             	mov    %eax,-0x7c(%ebp)
5d860f:	0f be 84 05 74 ff ff 	movsbl -0x8c(%ebp,%eax,1),%eax
5d8616:	ff
5d8617:	83 e8 20             	sub    $0x20,%eax
5d861a:	0f 84 86 01 00 00    	je     0x5d87a6
5d8620:	83 e8 04             	sub    $0x4,%eax
5d8623:	0f 84 63 01 00 00    	je     0x5d878c
5d8629:	83 e8 07             	sub    $0x7,%eax
5d862c:	0f 84 37 01 00 00    	je     0x5d8769
5d8632:	83 e8 4b             	sub    $0x4b,%eax
5d8635:	74 0f                	je     0x5d8646
5d8637:	48                   	dec    %eax
5d8638:	83 e8 01             	sub    $0x1,%eax
5d863b:	0f 84 89 01 00 00    	je     0x5d87ca
5d8641:	e9 b5 01 00 00       	jmp    0x5d87fb
5d8646:	85 ff                	test   %edi,%edi
5d8648:	75 1d                	jne    0x5d8667
5d864a:	83 7d 38 08          	cmpl   $0x8,0x38(%ebp)
5d864e:	8d 45 24             	lea    0x24(%ebp),%eax
5d8651:	72 03                	jb     0x5d8656
5d8653:	8b 45 24             	mov    0x24(%ebp),%eax
5d8656:	ff 75 34             	push   0x34(%ebp)
5d8659:	50                   	push   %eax
5d865a:	52                   	push   %edx
5d865b:	51                   	push   %ecx
5d865c:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
5d8662:	e9 f4 00 00 00       	jmp    0x5d875b
5d8667:	39 7d 34             	cmp    %edi,0x34(%ebp)
5d866a:	77 6b                	ja     0x5d86d7
5d866c:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
5d8672:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5d8675:	e8 28 99 ff ff       	call   0x5d1fa2
5d867a:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d867d:	e8 6a 0a 00 00       	call   0x5d90ec
5d8682:	0f b7 c0             	movzwl %ax,%eax
5d8685:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5d8688:	50                   	push   %eax
5d8689:	e8 14 99 ff ff       	call   0x5d1fa2
5d868e:	8b c7                	mov    %edi,%eax
5d8690:	2b 45 34             	sub    0x34(%ebp),%eax
5d8693:	50                   	push   %eax
5d8694:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
5d869a:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
5d86a0:	ff 75 10             	push   0x10(%ebp)
5d86a3:	ff 75 0c             	push   0xc(%ebp)
5d86a6:	50                   	push   %eax
5d86a7:	e8 7b 07 00 00       	call   0x5d8e27
5d86ac:	83 c4 14             	add    $0x14,%esp
5d86af:	83 7d 38 08          	cmpl   $0x8,0x38(%ebp)
5d86b3:	8b 08                	mov    (%eax),%ecx
5d86b5:	8b 50 04             	mov    0x4(%eax),%edx
5d86b8:	8d 45 24             	lea    0x24(%ebp),%eax
5d86bb:	89 4d 0c             	mov    %ecx,0xc(%ebp)
5d86be:	89 55 10             	mov    %edx,0x10(%ebp)
5d86c1:	72 03                	jb     0x5d86c6
5d86c3:	8b 45 24             	mov    0x24(%ebp),%eax
5d86c6:	ff 75 34             	push   0x34(%ebp)
5d86c9:	50                   	push   %eax
5d86ca:	52                   	push   %edx
5d86cb:	51                   	push   %ecx
5d86cc:	8d 85 3c ff ff ff    	lea    -0xc4(%ebp),%eax
5d86d2:	e9 84 00 00 00       	jmp    0x5d875b
5d86d7:	8b 45 34             	mov    0x34(%ebp),%eax
5d86da:	2b c7                	sub    %edi,%eax
5d86dc:	83 7d 38 08          	cmpl   $0x8,0x38(%ebp)
5d86e0:	8d 7d 24             	lea    0x24(%ebp),%edi
5d86e3:	89 bd 60 ff ff ff    	mov    %edi,-0xa0(%ebp)
5d86e9:	8b bd 7c ff ff ff    	mov    -0x84(%ebp),%edi
5d86ef:	72 0f                	jb     0x5d8700
5d86f1:	8b 7d 24             	mov    0x24(%ebp),%edi
5d86f4:	89 bd 60 ff ff ff    	mov    %edi,-0xa0(%ebp)
5d86fa:	8b bd 7c ff ff ff    	mov    -0x84(%ebp),%edi
5d8700:	50                   	push   %eax
5d8701:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
5d8707:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
5d870d:	52                   	push   %edx
5d870e:	51                   	push   %ecx
5d870f:	50                   	push   %eax
5d8710:	e8 43 fb ff ff       	call   0x5d8258
5d8715:	8b c8                	mov    %eax,%ecx
5d8717:	83 c4 14             	add    $0x14,%esp
5d871a:	8b 01                	mov    (%ecx),%eax
5d871c:	89 45 0c             	mov    %eax,0xc(%ebp)
5d871f:	8b 41 04             	mov    0x4(%ecx),%eax
5d8722:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
5d8725:	89 45 10             	mov    %eax,0x10(%ebp)
5d8728:	e8 bf 09 00 00       	call   0x5d90ec
5d872d:	0f b7 c0             	movzwl %ax,%eax
5d8730:	8d 4d 0c             	lea    0xc(%ebp),%ecx
5d8733:	50                   	push   %eax
5d8734:	e8 69 98 ff ff       	call   0x5d1fa2
5d8739:	83 7d 38 08          	cmpl   $0x8,0x38(%ebp)
5d873d:	8d 4d 24             	lea    0x24(%ebp),%ecx