5fcc2f:	83 c4 10             	add    $0x10,%esp
5fcc32:	eb 05                	jmp    0x5fcc39
5fcc34:	7f 03                	jg     0x5fcc39
5fcc36:	33 c0                	xor    %eax,%eax
5fcc38:	40                   	inc    %eax
5fcc39:	5f                   	pop    %edi
5fcc3a:	5e                   	pop    %esi
5fcc3b:	5d                   	pop    %ebp
5fcc3c:	c3                   	ret
5fcc3d:	8b ff                	mov    %edi,%edi
5fcc3f:	55                   	push   %ebp
5fcc40:	8b ec                	mov    %esp,%ebp
5fcc42:	53                   	push   %ebx
5fcc43:	56                   	push   %esi
5fcc44:	8b 75 0c             	mov    0xc(%ebp),%esi
5fcc47:	57                   	push   %edi
5fcc48:	6a 07                	push   $0x7
5fcc4a:	59                   	pop    %ecx
5fcc4b:	8d 46 06             	lea    0x6(%esi),%eax
5fcc4e:	99                   	cltd
5fcc4f:	f7 f9                	idiv   %ecx
5fcc51:	8b 45 10             	mov    0x10(%ebp),%eax
5fcc54:	2b c2                	sub    %edx,%eax
5fcc56:	03 c1                	add    %ecx,%eax
5fcc58:	99                   	cltd
5fcc59:	f7 f9                	idiv   %ecx
5fcc5b:	ff 75 08             	push   0x8(%ebp)
5fcc5e:	8b d8                	mov    %eax,%ebx
5fcc60:	e8 2d ad ff ff       	call   0x5f7992
5fcc65:	2b 75 10             	sub    0x10(%ebp),%esi
5fcc68:	59                   	pop    %ecx
5fcc69:	0f b6 c8             	movzbl %al,%ecx
5fcc6c:	6a 07                	push   $0x7
5fcc6e:	8d 86 73 01 00 00    	lea    0x173(%esi),%eax
5fcc74:	8b 7d 10             	mov    0x10(%ebp),%edi
5fcc77:	99                   	cltd
5fcc78:	2b f9                	sub    %ecx,%edi
5fcc7a:	5e                   	pop    %esi
5fcc7b:	f7 fe                	idiv   %esi
5fcc7d:	8d 81 6d 01 00 00    	lea    0x16d(%ecx),%eax
5fcc83:	8b f2                	mov    %edx,%esi
5fcc85:	03 c6                	add    %esi,%eax
5fcc87:	6a 07                	push   $0x7
5fcc89:	99                   	cltd
5fcc8a:	59                   	pop    %ecx
5fcc8b:	f7 f9                	idiv   %ecx
5fcc8d:	81 ff 6c 01 00 00    	cmp    $0x16c,%edi
5fcc93:	7c 05                	jl     0x5fcc9a
5fcc95:	83 fa 02             	cmp    $0x2,%edx
5fcc98:	74 1a                	je     0x5fccb4
5fcc9a:	81 ff 6b 01 00 00    	cmp    $0x16b,%edi
5fcca0:	7c 05                	jl     0x5fcca7
5fcca2:	83 fa 03             	cmp    $0x3,%edx
5fcca5:	74 0d                	je     0x5fccb4
5fcca7:	81 ff 6a 01 00 00    	cmp    $0x16a,%edi
5fccad:	7c 0a                	jl     0x5fccb9
5fccaf:	83 fa 04             	cmp    $0x4,%edx
5fccb2:	75 05                	jne    0x5fccb9
5fccb4:	83 c8 ff             	or     $0xffffffff,%eax
5fccb7:	eb 14                	jmp    0x5fcccd
5fccb9:	83 fe 02             	cmp    $0x2,%esi
5fccbc:	74 0c                	je     0x5fccca
5fccbe:	83 fe 03             	cmp    $0x3,%esi
5fccc1:	74 07                	je     0x5fccca
5fccc3:	8b c3                	mov    %ebx,%eax
5fccc5:	83 fe 04             	cmp    $0x4,%esi
5fccc8:	75 03                	jne    0x5fcccd
5fccca:	8d 43 01             	lea    0x1(%ebx),%eax
5fcccd:	5f                   	pop    %edi
5fccce:	5e                   	pop    %esi
5fcccf:	5b                   	pop    %ebx
5fccd0:	5d                   	pop    %ebp
5fccd1:	c3                   	ret
5fccd2:	8b ff                	mov    %edi,%edi
5fccd4:	55                   	push   %ebp
5fccd5:	8b ec                	mov    %esp,%ebp
5fccd7:	56                   	push   %esi
5fccd8:	ff 75 10             	push   0x10(%ebp)
5fccdb:	8b 75 08             	mov    0x8(%ebp),%esi
5fccde:	ff 75 0c             	push   0xc(%ebp)
5fcce1:	56                   	push   %esi
5fcce2:	e8 56 ff ff ff       	call   0x5fcc3d
5fcce7:	83 c4 0c             	add    $0xc,%esp
5fccea:	85 c0                	test   %eax,%eax
5fccec:	75 05                	jne    0x5fccf3
5fccee:	8d 46 ff             	lea    -0x1(%esi),%eax
5fccf1:	eb 07                	jmp    0x5fccfa
5fccf3:	8b c6                	mov    %esi,%eax
5fccf5:	7f 03                	jg     0x5fccfa
5fccf7:	8d 46 01             	lea    0x1(%esi),%eax
5fccfa:	5e                   	pop    %esi
5fccfb:	5d                   	pop    %ebp
5fccfc:	c3                   	ret
5fccfd:	8b ff                	mov    %edi,%edi
5fccff:	55                   	push   %ebp
5fcd00:	8b ec                	mov    %esp,%ebp
5fcd02:	51                   	push   %ecx
5fcd03:	51                   	push   %ecx
5fcd04:	8b 55 0c             	mov    0xc(%ebp),%edx
5fcd07:	53                   	push   %ebx
5fcd08:	0f b7 c2             	movzwl %dx,%eax
5fcd0b:	56                   	push   %esi
5fcd0c:	57                   	push   %edi
5fcd0d:	83 f8 5a             	cmp    $0x5a,%eax
5fcd10:	0f 86 63 05 00 00    	jbe    0x5fd279
5fcd16:	83 f8 6e             	cmp    $0x6e,%eax
5fcd19:	0f 87 f2 02 00 00    	ja     0x5fd011
5fcd1f:	0f 84 df 02 00 00    	je     0x5fd004
5fcd25:	83 f8 65             	cmp    $0x65,%eax
5fcd28:	0f 86 c0 00 00 00    	jbe    0x5fcdee
5fcd2e:	83 e8 67             	sub    $0x67,%eax
5fcd31:	74 7d                	je     0x5fcdb0
5fcd33:	83 e8 01             	sub    $0x1,%eax
5fcd36:	75 07                	jne    0x5fcd3f
5fcd38:	6a 62                	push   $0x62
5fcd3a:	5a                   	pop    %edx
5fcd3b:	52                   	push   %edx
5fcd3c:	58                   	pop    %eax
5fcd3d:	eb d7                	jmp    0x5fcd16
5fcd3f:	48                   	dec    %eax
5fcd40:	83 e8 01             	sub    $0x1,%eax
5fcd43:	74 40                	je     0x5fcd85
5fcd45:	83 e8 03             	sub    $0x3,%eax
5fcd48:	0f 85 71 02 00 00    	jne    0x5fcfbf
5fcd4e:	8b 45 10             	mov    0x10(%ebp),%eax
5fcd51:	8b 48 10             	mov    0x10(%eax),%ecx
5fcd54:	83 f9 0b             	cmp    $0xb,%ecx
5fcd57:	0f 87 52 02 00 00    	ja     0x5fcfaf
5fcd5d:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
5fcd61:	0f 95 c0             	setne  %al
5fcd64:	fe c8                	dec    %al
5fcd66:	24 30                	and    $0x30,%al
5fcd68:	0f b6 c0             	movzbl %al,%eax
5fcd6b:	50                   	push   %eax
5fcd6c:	ff 75 18             	push   0x18(%ebp)
5fcd6f:	ff 75 14             	push   0x14(%ebp)
5fcd72:	6a 02                	push   $0x2
5fcd74:	8d 41 01             	lea    0x1(%ecx),%eax
5fcd77:	50                   	push   %eax
5fcd78:	e8 98 09 00 00       	call   0x5fd715
5fcd7d:	83 c4 14             	add    $0x14,%esp
5fcd80:	e9 5c 09 00 00       	jmp    0x5fd6e1
5fcd85:	8b 45 10             	mov    0x10(%ebp),%eax
5fcd88:	8b 48 1c             	mov    0x1c(%eax),%ecx
5fcd8b:	81 f9 6d 01 00 00    	cmp    $0x16d,%ecx
5fcd91:	0f 87 18 02 00 00    	ja     0x5fcfaf
5fcd97:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
5fcd9b:	0f 95 c0             	setne  %al
5fcd9e:	fe c8                	dec    %al
5fcda0:	24 30                	and    $0x30,%al
5fcda2:	0f b6 c0             	movzbl %al,%eax
5fcda5:	50                   	push   %eax
5fcda6:	ff 75 18             	push   0x18(%ebp)
5fcda9:	ff 75 14             	push   0x14(%ebp)
5fcdac:	6a 03                	push   $0x3
5fcdae:	eb c4                	jmp    0x5fcd74
5fcdb0:	8b 4d 10             	mov    0x10(%ebp),%ecx
5fcdb3:	8b 51 14             	mov    0x14(%ecx),%edx
5fcdb6:	8d 82 6c 07 00 00    	lea    0x76c(%edx),%eax
5fcdbc:	3d 0f 27 00 00       	cmp    $0x270f,%eax
5fcdc1:	0f 87 e8 01 00 00    	ja     0x5fcfaf
5fcdc7:	6a 30                	push   $0x30
5fcdc9:	ff 75 18             	push   0x18(%ebp)
5fcdcc:	ff 75 14             	push   0x14(%ebp)
5fcdcf:	6a 02                	push   $0x2
5fcdd1:	ff 71 1c             	push   0x1c(%ecx)
5fcdd4:	ff 71 18             	push   0x18(%ecx)
5fcdd7:	52                   	push   %edx
5fcdd8:	e8 f5 fe ff ff       	call   0x5fccd2
5fcddd:	83 c4 0c             	add    $0xc,%esp
5fcde0:	05 6c 07 00 00       	add    $0x76c,%eax
5fcde5:	6a 64                	push   $0x64
5fcde7:	99                   	cltd
5fcde8:	59                   	pop    %ecx
5fcde9:	f7 f9                	idiv   %ecx
5fcdeb:	52                   	push   %edx
5fcdec:	eb 8a                	jmp    0x5fcd78
5fcdee:	0f 84 e4 01 00 00    	je     0x5fcfd8
5fcdf4:	83 e8 61             	sub    $0x61,%eax
5fcdf7:	0f 84 a7 01 00 00    	je     0x5fcfa4
5fcdfd:	83 e8 01             	sub    $0x1,%eax
5fce00:	0f 84 76 01 00 00    	je     0x5fcf7c
5fce06:	83 e8 01             	sub    $0x1,%eax
5fce09:	74 38                	je     0x5fce43
5fce0b:	83 e8 01             	sub    $0x1,%eax
5fce0e:	0f 85 ab 01 00 00    	jne    0x5fcfbf
5fce14:	8b 45 10             	mov    0x10(%ebp),%eax
5fce17:	8b 48 0c             	mov    0xc(%eax),%ecx
5fce1a:	8d 41 ff             	lea    -0x1(%ecx),%eax
5fce1d:	83 f8 1e             	cmp    $0x1e,%eax
5fce20:	0f 87 89 01 00 00    	ja     0x5fcfaf
5fce26:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
5fce2a:	0f 95 c0             	setne  %al
5fce2d:	fe c8                	dec    %al
5fce2f:	24 30                	and    $0x30,%al
5fce31:	0f b6 c0             	movzbl %al,%eax
5fce34:	50                   	push   %eax
5fce35:	ff 75 18             	push   0x18(%ebp)
5fce38:	ff 75 14             	push   0x14(%ebp)
5fce3b:	6a 02                	push   $0x2
5fce3d:	51                   	push   %ecx
5fce3e:	e9 35 ff ff ff       	jmp    0x5fcd78
5fce43:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
5fce46:	8b 45 20             	mov    0x20(%ebp),%eax
5fce49:	81 fb d8 45 6d 00    	cmp    $0x6d45d8,%ebx
5fce4f:	0f 85 dd 00 00 00    	jne    0x5fcf32
5fce55:	84 c0                	test   %al,%al
5fce57:	0f 85 d5 00 00 00    	jne    0x5fcf32
5fce5d:	8b 7d 18             	mov    0x18(%ebp),%edi
5fce60:	33 f6                	xor    %esi,%esi
5fce62:	56                   	push   %esi
5fce63:	53                   	push   %ebx
5fce64:	8b 5d 14             	mov    0x14(%ebp),%ebx
5fce67:	57                   	push   %edi
5fce68:	53                   	push   %ebx
5fce69:	ff 75 10             	push   0x10(%ebp)
5fce6c:	6a 61                	push   $0x61
5fce6e:	ff 75 08             	push   0x8(%ebp)
5fce71:	e8 87 fe ff ff       	call   0x5fccfd
5fce76:	83 c4 1c             	add    $0x1c,%esp
5fce79:	84 c0                	test   %al,%al
5fce7b:	75 10                	jne    0x5fce8d
5fce7d:	e8 77 01 ff ff       	call   0x5ecff9
5fce82:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5fce88:	e9 32 01 00 00       	jmp    0x5fcfbf
5fce8d:	57                   	push   %edi
5fce8e:	53                   	push   %ebx
5fce8f:	68 44 b4 68 00       	push   $0x68b444
5fce94:	e8 7c 09 00 00       	call   0x5fd815
5fce99:	56                   	push   %esi
5fce9a:	ff 75 1c             	push   0x1c(%ebp)
5fce9d:	57                   	push   %edi
5fce9e:	53                   	push   %ebx
5fce9f:	ff 75 10             	push   0x10(%ebp)
5fcea2:	6a 62                	push   $0x62
5fcea4:	ff 75 08             	push   0x8(%ebp)
5fcea7:	e8 51 fe ff ff       	call   0x5fccfd
5fceac:	83 c4 28             	add    $0x28,%esp
5fceaf:	84 c0                	test   %al,%al
5fceb1:	74 ca                	je     0x5fce7d
5fceb3:	57                   	push   %edi
5fceb4:	53                   	push   %ebx
5fceb5:	68 44 b4 68 00       	push   $0x68b444
5fceba:	e8 56 09 00 00       	call   0x5fd815
5fcebf:	56                   	push   %esi
5fcec0:	ff 75 1c             	push   0x1c(%ebp)
5fcec3:	57                   	push   %edi
5fcec4:	53                   	push   %ebx
5fcec5:	ff 75 10             	push   0x10(%ebp)
5fcec8:	6a 65                	push   $0x65
5fceca:	ff 75 08             	push   0x8(%ebp)
5fcecd:	e8 2b fe ff ff       	call   0x5fccfd
5fced2:	83 c4 28             	add    $0x28,%esp
5fced5:	84 c0                	test   %al,%al
5fced7:	74 a4                	je     0x5fce7d
5fced9:	57                   	push   %edi
5fceda:	53                   	push   %ebx
5fcedb:	68 44 b4 68 00       	push   $0x68b444
5fcee0:	e8 30 09 00 00       	call   0x5fd815
5fcee5:	56                   	push   %esi
5fcee6:	ff 75 1c             	push   0x1c(%ebp)
5fcee9:	57                   	push   %edi
5fceea:	53                   	push   %ebx
5fceeb:	ff 75 10             	push   0x10(%ebp)
5fceee:	6a 54                	push   $0x54
5fcef0:	ff 75 08             	push   0x8(%ebp)
5fcef3:	e8 05 fe ff ff       	call   0x5fccfd
5fcef8:	83 c4 28             	add    $0x28,%esp
5fcefb:	84 c0                	test   %al,%al
5fcefd:	0f 84 7a ff ff ff    	je     0x5fce7d
5fcf03:	57                   	push   %edi
5fcf04:	53                   	push   %ebx
5fcf05:	68 44 b4 68 00       	push   $0x68b444
5fcf0a:	e8 06 09 00 00       	call   0x5fd815
5fcf0f:	56                   	push   %esi
5fcf10:	ff 75 1c             	push   0x1c(%ebp)
5fcf13:	57                   	push   %edi
5fcf14:	53                   	push   %ebx
5fcf15:	ff 75 10             	push   0x10(%ebp)
5fcf18:	6a 59                	push   $0x59
5fcf1a:	ff 75 08             	push   0x8(%ebp)
5fcf1d:	e8 db fd ff ff       	call   0x5fccfd
5fcf22:	83 c4 28             	add    $0x28,%esp
5fcf25:	84 c0                	test   %al,%al
5fcf27:	0f 85 b4 07 00 00    	jne    0x5fd6e1
5fcf2d:	e9 4b ff ff ff       	jmp    0x5fce7d
5fcf32:	53                   	push   %ebx
5fcf33:	ff 75 18             	push   0x18(%ebp)
5fcf36:	0f b6 c0             	movzbl %al,%eax
5fcf39:	ff 75 14             	push   0x14(%ebp)
5fcf3c:	ff 75 10             	push   0x10(%ebp)
5fcf3f:	50                   	push   %eax
5fcf40:	ff 75 08             	push   0x8(%ebp)
5fcf43:	e8 fe 08 00 00       	call   0x5fd846
5fcf48:	83 c4 18             	add    $0x18,%esp
5fcf4b:	84 c0                	test   %al,%al
5fcf4d:	0f 84 2a ff ff ff    	je     0x5fce7d
5fcf53:	ff 75 18             	push   0x18(%ebp)
5fcf56:	ff 75 14             	push   0x14(%ebp)
5fcf59:	68 44 b4 68 00       	push   $0x68b444
5fcf5e:	e8 b2 08 00 00       	call   0x5fd815
5fcf63:	53                   	push   %ebx
5fcf64:	ff 75 18             	push   0x18(%ebp)
5fcf67:	ff 75 14             	push   0x14(%ebp)
5fcf6a:	ff 75 10             	push   0x10(%ebp)
5fcf6d:	6a 02                	push   $0x2
5fcf6f:	ff 75 08             	push   0x8(%ebp)
5fcf72:	e8 cf 08 00 00       	call   0x5fd846
5fcf77:	83 c4 24             	add    $0x24,%esp
5fcf7a:	eb a9                	jmp    0x5fcf25
5fcf7c:	8b 45 10             	mov    0x10(%ebp),%eax
5fcf7f:	8b 48 10             	mov    0x10(%eax),%ecx
5fcf82:	83 f9 0b             	cmp    $0xb,%ecx
5fcf85:	77 28                	ja     0x5fcfaf
5fcf87:	ff 75 18             	push   0x18(%ebp)
5fcf8a:	8b 45 1c             	mov    0x1c(%ebp),%eax
5fcf8d:	ff 75 14             	push   0x14(%ebp)
5fcf90:	ff b4 88 ec 00 00 00 	push   0xec(%eax,%ecx,4)
5fcf97:	e8 79 08 00 00       	call   0x5fd815
5fcf9c:	83 c4 0c             	add    $0xc,%esp
5fcf9f:	e9 3d 07 00 00       	jmp    0x5fd6e1
5fcfa4:	8b 45 10             	mov    0x10(%ebp),%eax
5fcfa7:	8b 48 18             	mov    0x18(%eax),%ecx
5fcfaa:	83 f9 06             	cmp    $0x6,%ecx
5fcfad:	76 17                	jbe    0x5fcfc6
5fcfaf:	e8 45 00 ff ff       	call   0x5ecff9
5fcfb4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5fcfba:	e8 60 ff fe ff       	call   0x5ecf1f
5fcfbf:	32 c0                	xor    %al,%al
5fcfc1:	e9 1d 07 00 00       	jmp    0x5fd6e3
5fcfc6:	ff 75 18             	push   0x18(%ebp)
5fcfc9:	8b 45 1c             	mov    0x1c(%ebp),%eax
5fcfcc:	ff 75 14             	push   0x14(%ebp)
5fcfcf:	ff b4 88 b4 00 00 00 	push   0xb4(%eax,%ecx,4)
5fcfd6:	eb bf                	jmp    0x5fcf97
5fcfd8:	8b 45 10             	mov    0x10(%ebp),%eax
5fcfdb:	8b 50 0c             	mov    0xc(%eax),%edx
5fcfde:	8d 42 ff             	lea    -0x1(%edx),%eax
5fcfe1:	83 f8 1e             	cmp    $0x1e,%eax
5fcfe4:	77 c9                	ja     0x5fcfaf
5fcfe6:	8a 4d 20             	mov    0x20(%ebp),%cl
5fcfe9:	80 f1 01             	xor    $0x1,%cl
5fcfec:	c0 e1 05             	shl    $0x5,%cl
5fcfef:	66 0f be c9          	movsbw %cl,%cx
5fcff3:	0f b7 c9             	movzwl %cx,%ecx
5fcff6:	51                   	push   %ecx
5fcff7:	ff 75 18             	push   0x18(%ebp)
5fcffa:	ff 75 14             	push   0x14(%ebp)
5fcffd:	6a 02                	push   $0x2
5fcfff:	e9 e7 fd ff ff       	jmp    0x5fcdeb