5fec0d:	c6 07 00             	movb   $0x0,(%edi)
5fec10:	ff 75 14             	push   0x14(%ebp)
5fec13:	e8 f1 fe ff ff       	call   0x5feb09
5fec18:	8b d0                	mov    %eax,%edx
5fec1a:	59                   	pop    %ecx
5fec1b:	85 d2                	test   %edx,%edx
5fec1d:	74 48                	je     0x5fec67
5fec1f:	8b ca                	mov    %edx,%ecx
5fec21:	8d 41 01             	lea    0x1(%ecx),%eax
5fec24:	89 45 fc             	mov    %eax,-0x4(%ebp)
5fec27:	8a 01                	mov    (%ecx),%al
5fec29:	41                   	inc    %ecx
5fec2a:	84 c0                	test   %al,%al
5fec2c:	75 f9                	jne    0x5fec27
5fec2e:	2b 4d fc             	sub    -0x4(%ebp),%ecx
5fec31:	41                   	inc    %ecx
5fec32:	89 0b                	mov    %ecx,(%ebx)
5fec34:	85 f6                	test   %esi,%esi
5fec36:	74 2f                	je     0x5fec67
5fec38:	3b ce                	cmp    %esi,%ecx
5fec3a:	76 1c                	jbe    0x5fec58
5fec3c:	6a 22                	push   $0x22
5fec3e:	58                   	pop    %eax
5fec3f:	eb 28                	jmp    0x5fec69
5fec41:	85 f6                	test   %esi,%esi
5fec43:	74 c4                	je     0x5fec09
5fec45:	e8 af e3 fe ff       	call   0x5ecff9
5fec4a:	6a 16                	push   $0x16
5fec4c:	5e                   	pop    %esi
5fec4d:	89 30                	mov    %esi,(%eax)
5fec4f:	e8 cb e2 fe ff       	call   0x5ecf1f
5fec54:	8b c6                	mov    %esi,%eax
5fec56:	eb 11                	jmp    0x5fec69
5fec58:	52                   	push   %edx
5fec59:	56                   	push   %esi
5fec5a:	57                   	push   %edi
5fec5b:	e8 ab 9c ff ff       	call   0x5f890b
5fec60:	83 c4 0c             	add    $0xc,%esp
5fec63:	85 c0                	test   %eax,%eax
5fec65:	75 07                	jne    0x5fec6e
5fec67:	33 c0                	xor    %eax,%eax
5fec69:	5f                   	pop    %edi
5fec6a:	5e                   	pop    %esi
5fec6b:	5b                   	pop    %ebx
5fec6c:	c9                   	leave
5fec6d:	c3                   	ret
5fec6e:	33 c0                	xor    %eax,%eax
5fec70:	50                   	push   %eax
5fec71:	50                   	push   %eax
5fec72:	50                   	push   %eax
5fec73:	50                   	push   %eax
5fec74:	50                   	push   %eax
5fec75:	e8 d2 e2 fe ff       	call   0x5ecf4c
5fec7a:	cc                   	int3
5fec7b:	8b ff                	mov    %edi,%edi
5fec7d:	55                   	push   %ebp
5fec7e:	8b ec                	mov    %esp,%ebp
5fec80:	5d                   	pop    %ebp
5fec81:	e9 04 fe ff ff       	jmp    0x5fea8a
5fec86:	8b ff                	mov    %edi,%edi
5fec88:	55                   	push   %ebp
5fec89:	8b ec                	mov    %esp,%ebp
5fec8b:	5d                   	pop    %ebp
5fec8c:	e9 e5 fe ff ff       	jmp    0x5feb76
5fec91:	cc                   	int3
5fec92:	cc                   	int3
5fec93:	cc                   	int3
5fec94:	cc                   	int3
5fec95:	cc                   	int3
5fec96:	cc                   	int3
5fec97:	cc                   	int3
5fec98:	cc                   	int3
5fec99:	cc                   	int3
5fec9a:	cc                   	int3
5fec9b:	cc                   	int3
5fec9c:	cc                   	int3
5fec9d:	cc                   	int3
5fec9e:	cc                   	int3
5fec9f:	cc                   	int3
5feca0:	8b ff                	mov    %edi,%edi
5feca2:	55                   	push   %ebp
5feca3:	8b ec                	mov    %esp,%ebp
5feca5:	8b 45 0c             	mov    0xc(%ebp),%eax
5feca8:	57                   	push   %edi
5feca9:	8b 7d 08             	mov    0x8(%ebp),%edi
5fecac:	3b f8                	cmp    %eax,%edi
5fecae:	74 26                	je     0x5fecd6
5fecb0:	56                   	push   %esi
5fecb1:	8b 75 10             	mov    0x10(%ebp),%esi
5fecb4:	85 f6                	test   %esi,%esi
5fecb6:	74 1d                	je     0x5fecd5
5fecb8:	2b f8                	sub    %eax,%edi
5fecba:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5fecc0:	8a 08                	mov    (%eax),%cl
5fecc2:	8d 40 01             	lea    0x1(%eax),%eax
5fecc5:	8a 54 07 ff          	mov    -0x1(%edi,%eax,1),%dl
5fecc9:	88 4c 07 ff          	mov    %cl,-0x1(%edi,%eax,1)
5feccd:	88 50 ff             	mov    %dl,-0x1(%eax)
5fecd0:	83 ee 01             	sub    $0x1,%esi
5fecd3:	75 eb                	jne    0x5fecc0
5fecd5:	5e                   	pop    %esi
5fecd6:	5f                   	pop    %edi
5fecd7:	5d                   	pop    %ebp
5fecd8:	c3                   	ret
5fecd9:	cc                   	int3
5fecda:	cc                   	int3
5fecdb:	cc                   	int3
5fecdc:	cc                   	int3
5fecdd:	cc                   	int3
5fecde:	cc                   	int3
5fecdf:	cc                   	int3
5fece0:	8b ff                	mov    %edi,%edi
5fece2:	55                   	push   %ebp
5fece3:	8b ec                	mov    %esp,%ebp
5fece5:	81 ec 1c 01 00 00    	sub    $0x11c,%esp
5feceb:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5fecf0:	33 c5                	xor    %ebp,%eax
5fecf2:	89 45 fc             	mov    %eax,-0x4(%ebp)
5fecf5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
5fecf8:	53                   	push   %ebx
5fecf9:	8b 5d 14             	mov    0x14(%ebp),%ebx
5fecfc:	56                   	push   %esi
5fecfd:	8b 75 08             	mov    0x8(%ebp),%esi
5fed00:	89 b5 fc fe ff ff    	mov    %esi,-0x104(%ebp)
5fed06:	89 9d f8 fe ff ff    	mov    %ebx,-0x108(%ebp)
5fed0c:	57                   	push   %edi
5fed0d:	8b 7d 10             	mov    0x10(%ebp),%edi
5fed10:	89 bd 00 ff ff ff    	mov    %edi,-0x100(%ebp)
5fed16:	85 f6                	test   %esi,%esi
5fed18:	75 25                	jne    0x5fed3f
5fed1a:	85 c9                	test   %ecx,%ecx
5fed1c:	74 21                	je     0x5fed3f
5fed1e:	e8 d6 e2 fe ff       	call   0x5ecff9
5fed23:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5fed29:	e8 f1 e1 fe ff       	call   0x5ecf1f
5fed2e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5fed31:	5f                   	pop    %edi
5fed32:	5e                   	pop    %esi
5fed33:	33 cd                	xor    %ebp,%ecx
5fed35:	5b                   	pop    %ebx
5fed36:	e8 9f 27 fe ff       	call   0x5e14da
5fed3b:	8b e5                	mov    %ebp,%esp
5fed3d:	5d                   	pop    %ebp
5fed3e:	c3                   	ret
5fed3f:	85 ff                	test   %edi,%edi
5fed41:	74 db                	je     0x5fed1e
5fed43:	85 db                	test   %ebx,%ebx
5fed45:	74 d7                	je     0x5fed1e
5fed47:	c7 85 f4 fe ff ff 00 	movl   $0x0,-0x10c(%ebp)
5fed4e:	00 00 00
5fed51:	83 f9 02             	cmp    $0x2,%ecx
5fed54:	72 d8                	jb     0x5fed2e
5fed56:	49                   	dec    %ecx
5fed57:	0f af cf             	imul   %edi,%ecx
5fed5a:	03 ce                	add    %esi,%ecx
5fed5c:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
5fed62:	8b c1                	mov    %ecx,%eax
5fed64:	33 d2                	xor    %edx,%edx
5fed66:	2b c6                	sub    %esi,%eax
5fed68:	f7 f7                	div    %edi
5fed6a:	8d 78 01             	lea    0x1(%eax),%edi
5fed6d:	83 ff 08             	cmp    $0x8,%edi
5fed70:	0f 87 dc 00 00 00    	ja     0x5fee52
5fed76:	8b bd 00 ff ff ff    	mov    -0x100(%ebp),%edi
5fed7c:	3b ce                	cmp    %esi,%ecx
5fed7e:	0f 86 a1 00 00 00    	jbe    0x5fee25
5fed84:	8d 14 37             	lea    (%edi,%esi,1),%edx
5fed87:	89 95 ec fe ff ff    	mov    %edx,-0x114(%ebp)
5fed8d:	8d 49 00             	lea    0x0(%ecx),%ecx
5fed90:	8b c6                	mov    %esi,%eax
5fed92:	8b f2                	mov    %edx,%esi
5fed94:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5fed9a:	3b f1                	cmp    %ecx,%esi
5fed9c:	77 31                	ja     0x5fedcf
5fed9e:	8b ff                	mov    %edi,%edi
5feda0:	50                   	push   %eax
5feda1:	56                   	push   %esi
5feda2:	8b cb                	mov    %ebx,%ecx
5feda4:	ff 15 e0 24 68 00    	call   *0x6824e0
5fedaa:	ff d3                	call   *%ebx
5fedac:	83 c4 08             	add    $0x8,%esp
5fedaf:	85 c0                	test   %eax,%eax
5fedb1:	7e 0a                	jle    0x5fedbd
5fedb3:	8b c6                	mov    %esi,%eax
5fedb5:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5fedbb:	eb 06                	jmp    0x5fedc3
5fedbd:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
5fedc3:	8b 8d 04 ff ff ff    	mov    -0xfc(%ebp),%ecx
5fedc9:	03 f7                	add    %edi,%esi
5fedcb:	3b f1                	cmp    %ecx,%esi
5fedcd:	76 d1                	jbe    0x5feda0
5fedcf:	8b d1                	mov    %ecx,%edx
5fedd1:	3b c1                	cmp    %ecx,%eax
5fedd3:	74 34                	je     0x5fee09
5fedd5:	2b c1                	sub    %ecx,%eax
5fedd7:	8b df                	mov    %edi,%ebx
5fedd9:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5feddf:	90                   	nop
5fede0:	8a 0c 10             	mov    (%eax,%edx,1),%cl
5fede3:	8d 52 01             	lea    0x1(%edx),%edx
5fede6:	8b b5 08 ff ff ff    	mov    -0xf8(%ebp),%esi
5fedec:	8a 42 ff             	mov    -0x1(%edx),%al
5fedef:	88 44 16 ff          	mov    %al,-0x1(%esi,%edx,1)
5fedf3:	8b c6                	mov    %esi,%eax
5fedf5:	88 4a ff             	mov    %cl,-0x1(%edx)
5fedf8:	83 eb 01             	sub    $0x1,%ebx
5fedfb:	75 e3                	jne    0x5fede0
5fedfd:	8b 9d f8 fe ff ff    	mov    -0x108(%ebp),%ebx
5fee03:	8b 8d 04 ff ff ff    	mov    -0xfc(%ebp),%ecx
5fee09:	8b b5 fc fe ff ff    	mov    -0x104(%ebp),%esi
5fee0f:	2b cf                	sub    %edi,%ecx
5fee11:	8b 95 ec fe ff ff    	mov    -0x114(%ebp),%edx
5fee17:	89 8d 04 ff ff ff    	mov    %ecx,-0xfc(%ebp)
5fee1d:	3b ce                	cmp    %esi,%ecx
5fee1f:	0f 87 6b ff ff ff    	ja     0x5fed90
5fee25:	8b 8d f4 fe ff ff    	mov    -0x10c(%ebp),%ecx
5fee2b:	8b c1                	mov    %ecx,%eax
5fee2d:	49                   	dec    %ecx
5fee2e:	89 8d f4 fe ff ff    	mov    %ecx,-0x10c(%ebp)
5fee34:	85 c0                	test   %eax,%eax
5fee36:	0f 8e f2 fe ff ff    	jle    0x5fed2e
5fee3c:	8b 74 8d 84          	mov    -0x7c(%ebp,%ecx,4),%esi
5fee40:	8b 8c 8d 0c ff ff ff 	mov    -0xf4(%ebp,%ecx,4),%ecx
5fee47:	89 b5 fc fe ff ff    	mov    %esi,-0x104(%ebp)
5fee4d:	e9 0a ff ff ff       	jmp    0x5fed5c
5fee52:	8b b5 00 ff ff ff    	mov    -0x100(%ebp),%esi
5fee58:	8b cb                	mov    %ebx,%ecx
5fee5a:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
5fee60:	d1 ef                	shr    $1,%edi
5fee62:	0f af fe             	imul   %esi,%edi
5fee65:	03 f8                	add    %eax,%edi
5fee67:	57                   	push   %edi
5fee68:	50                   	push   %eax
5fee69:	ff 15 e0 24 68 00    	call   *0x6824e0
5fee6f:	ff d3                	call   *%ebx
5fee71:	83 c4 08             	add    $0x8,%esp
5fee74:	85 c0                	test   %eax,%eax
5fee76:	7e 10                	jle    0x5fee88
5fee78:	56                   	push   %esi
5fee79:	57                   	push   %edi
5fee7a:	ff b5 fc fe ff ff    	push   -0x104(%ebp)
5fee80:	e8 1b fe ff ff       	call   0x5feca0
5fee85:	83 c4 0c             	add    $0xc,%esp
5fee88:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
5fee8e:	8b cb                	mov    %ebx,%ecx
5fee90:	ff b5 fc fe ff ff    	push   -0x104(%ebp)
5fee96:	ff 15 e0 24 68 00    	call   *0x6824e0
5fee9c:	ff d3                	call   *%ebx
5fee9e:	83 c4 08             	add    $0x8,%esp
5feea1:	85 c0                	test   %eax,%eax
5feea3:	7e 15                	jle    0x5feeba
5feea5:	56                   	push   %esi
5feea6:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
5feeac:	ff b5 fc fe ff ff    	push   -0x104(%ebp)
5feeb2:	e8 e9 fd ff ff       	call   0x5feca0
5feeb7:	83 c4 0c             	add    $0xc,%esp
5feeba:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
5feec0:	8b cb                	mov    %ebx,%ecx
5feec2:	57                   	push   %edi
5feec3:	ff 15 e0 24 68 00    	call   *0x6824e0
5feec9:	ff d3                	call   *%ebx
5feecb:	83 c4 08             	add    $0x8,%esp
5feece:	85 c0                	test   %eax,%eax
5feed0:	7e 10                	jle    0x5feee2
5feed2:	56                   	push   %esi
5feed3:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
5feed9:	57                   	push   %edi
5feeda:	e8 c1 fd ff ff       	call   0x5feca0
5feedf:	83 c4 0c             	add    $0xc,%esp
5feee2:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
5feee8:	8b d8                	mov    %eax,%ebx
5feeea:	8b b5 fc fe ff ff    	mov    -0x104(%ebp),%esi
5feef0:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx
5feef6:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5feefc:	8d 64 24 00          	lea    0x0(%esp),%esp
5fef00:	3b fe                	cmp    %esi,%edi
5fef02:	76 37                	jbe    0x5fef3b
5fef04:	03 f2                	add    %edx,%esi
5fef06:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
5fef0c:	3b f7                	cmp    %edi,%esi
5fef0e:	73 25                	jae    0x5fef35
5fef10:	8b 8d f8 fe ff ff    	mov    -0x108(%ebp),%ecx
5fef16:	57                   	push   %edi
5fef17:	56                   	push   %esi
5fef18:	ff 15 e0 24 68 00    	call   *0x6824e0
5fef1e:	ff 95 f8 fe ff ff    	call   *-0x108(%ebp)
5fef24:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx
5fef2a:	83 c4 08             	add    $0x8,%esp
5fef2d:	85 c0                	test   %eax,%eax
5fef2f:	7e d3                	jle    0x5fef04
5fef31:	3b fe                	cmp    %esi,%edi
5fef33:	77 3d                	ja     0x5fef72
5fef35:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
5fef3b:	8b 9d f8 fe ff ff    	mov    -0x108(%ebp),%ebx
5fef41:	03 f2                	add    %edx,%esi
5fef43:	3b f0                	cmp    %eax,%esi
5fef45:	77 1f                	ja     0x5fef66
5fef47:	57                   	push   %edi
5fef48:	56                   	push   %esi
5fef49:	8b cb                	mov    %ebx,%ecx
5fef4b:	ff 15 e0 24 68 00    	call   *0x6824e0
5fef51:	ff d3                	call   *%ebx
5fef53:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx
5fef59:	83 c4 08             	add    $0x8,%esp
5fef5c:	85 c0                	test   %eax,%eax
5fef5e:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
5fef64:	7e db                	jle    0x5fef41
5fef66:	8b 9d 08 ff ff ff    	mov    -0xf8(%ebp),%ebx
5fef6c:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
5fef72:	8b b5 f8 fe ff ff    	mov    -0x108(%ebp),%esi
5fef78:	eb 06                	jmp    0x5fef80
5fef7a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
5fef80:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx
5fef86:	8b c3                	mov    %ebx,%eax
5fef88:	2b da                	sub    %edx,%ebx
5fef8a:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
5fef90:	3b df                	cmp    %edi,%ebx
5fef92:	76 1f                	jbe    0x5fefb3
5fef94:	57                   	push   %edi
5fef95:	53                   	push   %ebx
5fef96:	8b ce                	mov    %esi,%ecx
5fef98:	ff 15 e0 24 68 00    	call   *0x6824e0
5fef9e:	ff d6                	call   *%esi
5fefa0:	83 c4 08             	add    $0x8,%esp
5fefa3:	85 c0                	test   %eax,%eax
5fefa5:	7f d9                	jg     0x5fef80
5fefa7:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx
5fefad:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
5fefb3:	8b b5 f0 fe ff ff    	mov    -0x110(%ebp),%esi
5fefb9:	89 9d 08 ff ff ff    	mov    %ebx,-0xf8(%ebp)
5fefbf:	3b de                	cmp    %esi,%ebx
5fefc1:	72 59                	jb     0x5ff01c
5fefc3:	89 95 e4 fe ff ff    	mov    %edx,-0x11c(%ebp)
5fefc9:	89 9d e8 fe ff ff    	mov    %ebx,-0x118(%ebp)
5fefcf:	74 36                	je     0x5ff007
5fefd1:	2b f3                	sub    %ebx,%esi
5fefd3:	8b d3                	mov    %ebx,%edx
5fefd5:	8b 9d e4 fe ff ff    	mov    -0x11c(%ebp),%ebx
5fefdb:	eb 03                	jmp    0x5fefe0
5fefdd:	8d 49 00             	lea    0x0(%ecx),%ecx
5fefe0:	8a 02                	mov    (%edx),%al
5fefe2:	8d 52 01             	lea    0x1(%edx),%edx
5fefe5:	8a 4c 16 ff          	mov    -0x1(%esi,%edx,1),%cl
5fefe9:	88 44 16 ff          	mov    %al,-0x1(%esi,%edx,1)
5fefed:	88 4a ff             	mov    %cl,-0x1(%edx)
5feff0:	83 eb 01             	sub    $0x1,%ebx
5feff3:	75 eb                	jne    0x5fefe0
5feff5:	8b b5 f0 fe ff ff    	mov    -0x110(%ebp),%esi
5feffb:	8b 9d 08 ff ff ff    	mov    -0xf8(%ebp),%ebx
5ff001:	8b 95 00 ff ff ff    	mov    -0x100(%ebp),%edx