4fcea6:	8d 43 0c             	lea    0xc(%ebx),%eax
4fcea9:	5a                   	pop    %edx
4fceaa:	5d                   	pop    %ebp
4fceab:	5f                   	pop    %edi
4fceac:	5e                   	pop    %esi
4fcead:	5b                   	pop    %ebx
4fceae:	c3                   	ret
4fceaf:	90                   	nop
4fceb0:	55                   	push   %ebp
4fceb1:	8b ec                	mov    %esp,%ebp
4fceb3:	83 c4 e8             	add    $0xffffffe8,%esp
4fceb6:	53                   	push   %ebx
4fceb7:	56                   	push   %esi
4fceb8:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4fcebb:	89 55 f8             	mov    %edx,-0x8(%ebp)
4fcebe:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fcec1:	33 d2                	xor    %edx,%edx
4fcec3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcec6:	8b 70 04             	mov    0x4(%eax),%esi
4fcec9:	b8 f4 c9 9a 3b       	mov    $0x3b9ac9f4,%eax
4fcece:	f7 75 f4             	divl   -0xc(%ebp)
4fced1:	8b d8                	mov    %eax,%ebx
4fced3:	85 db                	test   %ebx,%ebx
4fced5:	7f 13                	jg     0x4fceea
4fced7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fceda:	8b 10                	mov    (%eax),%edx
4fcedc:	c7 42 14 45 00 00 00 	movl   $0x45,0x14(%edx)
4fcee3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcee6:	8b 10                	mov    (%eax),%edx
4fcee8:	ff 12                	call   *(%edx)
4fceea:	3b 5d 08             	cmp    0x8(%ebp),%ebx
4fceed:	7d 05                	jge    0x4fcef4
4fceef:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4fcef2:	eb 06                	jmp    0x4fcefa
4fcef4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4fcef7:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4fcefa:	8b 45 ec             	mov    -0x14(%ebp),%eax
4fcefd:	89 46 4c             	mov    %eax,0x4c(%esi)
4fcf00:	8b 4d 08             	mov    0x8(%ebp),%ecx
4fcf03:	c1 e1 02             	shl    $0x2,%ecx
4fcf06:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fcf09:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcf0c:	e8 cf fd ff ff       	call   0x4fcce0
4fcf11:	89 45 f0             	mov    %eax,-0x10(%ebp)
4fcf14:	33 d2                	xor    %edx,%edx
4fcf16:	89 55 e8             	mov    %edx,-0x18(%ebp)
4fcf19:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4fcf1c:	3b 4d 08             	cmp    0x8(%ebp),%ecx
4fcf1f:	73 55                	jae    0x4fcf76
4fcf21:	8b 45 08             	mov    0x8(%ebp),%eax
4fcf24:	2b 45 e8             	sub    -0x18(%ebp),%eax
4fcf27:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4fcf2a:	76 05                	jbe    0x4fcf31
4fcf2c:	8b 55 ec             	mov    -0x14(%ebp),%edx
4fcf2f:	eb 06                	jmp    0x4fcf37
4fcf31:	8b 55 08             	mov    0x8(%ebp),%edx
4fcf34:	2b 55 e8             	sub    -0x18(%ebp),%edx
4fcf37:	89 55 ec             	mov    %edx,-0x14(%ebp)
4fcf3a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4fcf3d:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fcf40:	0f af 4d f4          	imul   -0xc(%ebp),%ecx
4fcf44:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcf47:	e8 c4 fe ff ff       	call   0x4fce10
4fcf4c:	8b d0                	mov    %eax,%edx
4fcf4e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4fcf51:	8b 45 f0             	mov    -0x10(%ebp),%eax
4fcf54:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4fcf57:	8d 04 98             	lea    (%eax,%ebx,4),%eax
4fcf5a:	85 c9                	test   %ecx,%ecx
4fcf5c:	76 10                	jbe    0x4fcf6e
4fcf5e:	89 10                	mov    %edx,(%eax)
4fcf60:	ff 45 e8             	incl   -0x18(%ebp)
4fcf63:	83 c0 04             	add    $0x4,%eax
4fcf66:	03 55 f4             	add    -0xc(%ebp),%edx
4fcf69:	49                   	dec    %ecx
4fcf6a:	85 c9                	test   %ecx,%ecx
4fcf6c:	77 f0                	ja     0x4fcf5e
4fcf6e:	8b 55 e8             	mov    -0x18(%ebp),%edx
4fcf71:	3b 55 08             	cmp    0x8(%ebp),%edx
4fcf74:	72 ab                	jb     0x4fcf21
4fcf76:	8b 45 f0             	mov    -0x10(%ebp),%eax
4fcf79:	5e                   	pop    %esi
4fcf7a:	5b                   	pop    %ebx
4fcf7b:	8b e5                	mov    %ebp,%esp
4fcf7d:	5d                   	pop    %ebp
4fcf7e:	c2 04 00             	ret    $0x4
4fcf81:	90                   	nop
4fcf82:	90                   	nop
4fcf83:	90                   	nop
4fcf84:	55                   	push   %ebp
4fcf85:	8b ec                	mov    %esp,%ebp
4fcf87:	83 c4 e8             	add    $0xffffffe8,%esp
4fcf8a:	53                   	push   %ebx
4fcf8b:	56                   	push   %esi
4fcf8c:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4fcf8f:	89 55 f8             	mov    %edx,-0x8(%ebp)
4fcf92:	89 45 fc             	mov    %eax,-0x4(%ebp)
4fcf95:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcf98:	8b 70 04             	mov    0x4(%eax),%esi
4fcf9b:	8b 45 f4             	mov    -0xc(%ebp),%eax
4fcf9e:	c1 e0 07             	shl    $0x7,%eax
4fcfa1:	50                   	push   %eax
4fcfa2:	b8 f4 c9 9a 3b       	mov    $0x3b9ac9f4,%eax
4fcfa7:	5a                   	pop    %edx
4fcfa8:	8b ca                	mov    %edx,%ecx
4fcfaa:	33 d2                	xor    %edx,%edx
4fcfac:	f7 f1                	div    %ecx
4fcfae:	8b d8                	mov    %eax,%ebx
4fcfb0:	85 db                	test   %ebx,%ebx
4fcfb2:	7f 13                	jg     0x4fcfc7
4fcfb4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcfb7:	8b 10                	mov    (%eax),%edx
4fcfb9:	c7 42 14 45 00 00 00 	movl   $0x45,0x14(%edx)
4fcfc0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcfc3:	8b 10                	mov    (%eax),%edx
4fcfc5:	ff 12                	call   *(%edx)
4fcfc7:	3b 5d 08             	cmp    0x8(%ebp),%ebx
4fcfca:	7d 05                	jge    0x4fcfd1
4fcfcc:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4fcfcf:	eb 06                	jmp    0x4fcfd7
4fcfd1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4fcfd4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4fcfd7:	8b 45 ec             	mov    -0x14(%ebp),%eax
4fcfda:	89 46 4c             	mov    %eax,0x4c(%esi)
4fcfdd:	8b 4d 08             	mov    0x8(%ebp),%ecx
4fcfe0:	c1 e1 02             	shl    $0x2,%ecx
4fcfe3:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fcfe6:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fcfe9:	e8 f2 fc ff ff       	call   0x4fcce0
4fcfee:	89 45 f0             	mov    %eax,-0x10(%ebp)
4fcff1:	33 d2                	xor    %edx,%edx
4fcff3:	89 55 e8             	mov    %edx,-0x18(%ebp)
4fcff6:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4fcff9:	3b 4d 08             	cmp    0x8(%ebp),%ecx
4fcffc:	73 5d                	jae    0x4fd05b
4fcffe:	8b 45 08             	mov    0x8(%ebp),%eax
4fd001:	2b 45 e8             	sub    -0x18(%ebp),%eax
4fd004:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4fd007:	76 05                	jbe    0x4fd00e
4fd009:	8b 55 ec             	mov    -0x14(%ebp),%edx
4fd00c:	eb 06                	jmp    0x4fd014
4fd00e:	8b 55 08             	mov    0x8(%ebp),%edx
4fd011:	2b 55 e8             	sub    -0x18(%ebp),%edx
4fd014:	89 55 ec             	mov    %edx,-0x14(%ebp)
4fd017:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4fd01a:	0f af 4d f4          	imul   -0xc(%ebp),%ecx
4fd01e:	c1 e1 07             	shl    $0x7,%ecx
4fd021:	8b 55 f8             	mov    -0x8(%ebp),%edx
4fd024:	8b 45 fc             	mov    -0x4(%ebp),%eax
4fd027:	e8 e4 fd ff ff       	call   0x4fce10
4fd02c:	8b d0                	mov    %eax,%edx
4fd02e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4fd031:	8b 45 f0             	mov    -0x10(%ebp),%eax
4fd034:	8b 5d e8             	mov    -0x18(%ebp),%ebx
4fd037:	8d 04 98             	lea    (%eax,%ebx,4),%eax
4fd03a:	85 c9                	test   %ecx,%ecx
4fd03c:	76 15                	jbe    0x4fd053
4fd03e:	89 10                	mov    %edx,(%eax)
4fd040:	ff 45 e8             	incl   -0x18(%ebp)
4fd043:	83 c0 04             	add    $0x4,%eax
4fd046:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4fd049:	c1 e3 07             	shl    $0x7,%ebx
4fd04c:	03 d3                	add    %ebx,%edx
4fd04e:	49                   	dec    %ecx
4fd04f:	85 c9                	test   %ecx,%ecx
4fd051:	77 eb                	ja     0x4fd03e
4fd053:	8b 45 e8             	mov    -0x18(%ebp),%eax
4fd056:	3b 45 08             	cmp    0x8(%ebp),%eax
4fd059:	72 a3                	jb     0x4fcffe
4fd05b:	8b 45 f0             	mov    -0x10(%ebp),%eax
4fd05e:	5e                   	pop    %esi
4fd05f:	5b                   	pop    %ebx
4fd060:	8b e5                	mov    %ebp,%esp
4fd062:	5d                   	pop    %ebp
4fd063:	c2 04 00             	ret    $0x4
4fd066:	90                   	nop
4fd067:	90                   	nop
4fd068:	55                   	push   %ebp
4fd069:	8b ec                	mov    %esp,%ebp
4fd06b:	51                   	push   %ecx
4fd06c:	53                   	push   %ebx
4fd06d:	8b d8                	mov    %eax,%ebx
4fd06f:	56                   	push   %esi
4fd070:	57                   	push   %edi
4fd071:	8b fa                	mov    %edx,%edi
4fd073:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4fd076:	83 ff 01             	cmp    $0x1,%edi
4fd079:	8b 73 04             	mov    0x4(%ebx),%esi
4fd07c:	74 12                	je     0x4fd090
4fd07e:	8b 03                	mov    (%ebx),%eax
4fd080:	c7 40 14 0c 00 00 00 	movl   $0xc,0x14(%eax)
4fd087:	89 78 18             	mov    %edi,0x18(%eax)
4fd08a:	8b c3                	mov    %ebx,%eax
4fd08c:	8b 10                	mov    (%eax),%edx
4fd08e:	ff 12                	call   *(%edx)
4fd090:	b9 80 00 00 00       	mov    $0x80,%ecx
4fd095:	8b d7                	mov    %edi,%edx
4fd097:	8b c3                	mov    %ebx,%eax
4fd099:	e8 42 fc ff ff       	call   0x4fcce0
4fd09e:	33 c9                	xor    %ecx,%ecx
4fd0a0:	89 08                	mov    %ecx,(%eax)
4fd0a2:	8b 55 0c             	mov    0xc(%ebp),%edx
4fd0a5:	89 50 04             	mov    %edx,0x4(%eax)
4fd0a8:	8b 4d 10             	mov    0x10(%ebp),%ecx
4fd0ab:	89 48 08             	mov    %ecx,0x8(%eax)
4fd0ae:	8b 55 08             	mov    0x8(%ebp),%edx
4fd0b1:	89 50 0c             	mov    %edx,0xc(%eax)
4fd0b4:	33 d2                	xor    %edx,%edx
4fd0b6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4fd0b9:	89 48 20             	mov    %ecx,0x20(%eax)
4fd0bc:	89 50 28             	mov    %edx,0x28(%eax)
4fd0bf:	8b 4e 40             	mov    0x40(%esi),%ecx
4fd0c2:	89 48 2c             	mov    %ecx,0x2c(%eax)
4fd0c5:	89 46 40             	mov    %eax,0x40(%esi)
4fd0c8:	5f                   	pop    %edi
4fd0c9:	5e                   	pop    %esi
4fd0ca:	5b                   	pop    %ebx
4fd0cb:	59                   	pop    %ecx
4fd0cc:	5d                   	pop    %ebp
4fd0cd:	c2 0c 00             	ret    $0xc
4fd0d0:	55                   	push   %ebp
4fd0d1:	8b ec                	mov    %esp,%ebp
4fd0d3:	51                   	push   %ecx
4fd0d4:	53                   	push   %ebx
4fd0d5:	8b d8                	mov    %eax,%ebx
4fd0d7:	56                   	push   %esi
4fd0d8:	57                   	push   %edi
4fd0d9:	8b fa                	mov    %edx,%edi
4fd0db:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4fd0de:	83 ff 01             	cmp    $0x1,%edi
4fd0e1:	8b 73 04             	mov    0x4(%ebx),%esi
4fd0e4:	74 12                	je     0x4fd0f8
4fd0e6:	8b 03                	mov    (%ebx),%eax
4fd0e8:	c7 40 14 0c 00 00 00 	movl   $0xc,0x14(%eax)
4fd0ef:	89 78 18             	mov    %edi,0x18(%eax)
4fd0f2:	8b c3                	mov    %ebx,%eax
4fd0f4:	8b 10                	mov    (%eax),%edx
4fd0f6:	ff 12                	call   *(%edx)
4fd0f8:	b9 80 00 00 00       	mov    $0x80,%ecx
4fd0fd:	8b d7                	mov    %edi,%edx
4fd0ff:	8b c3                	mov    %ebx,%eax
4fd101:	e8 da fb ff ff       	call   0x4fcce0
4fd106:	33 c9                	xor    %ecx,%ecx
4fd108:	89 08                	mov    %ecx,(%eax)
4fd10a:	8b 55 0c             	mov    0xc(%ebp),%edx
4fd10d:	89 50 04             	mov    %edx,0x4(%eax)
4fd110:	8b 4d 10             	mov    0x10(%ebp),%ecx
4fd113:	89 48 08             	mov    %ecx,0x8(%eax)
4fd116:	8b 55 08             	mov    0x8(%ebp),%edx
4fd119:	89 50 0c             	mov    %edx,0xc(%eax)
4fd11c:	33 d2                	xor    %edx,%edx
4fd11e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4fd121:	89 48 20             	mov    %ecx,0x20(%eax)
4fd124:	89 50 28             	mov    %edx,0x28(%eax)
4fd127:	8b 4e 44             	mov    0x44(%esi),%ecx
4fd12a:	89 48 2c             	mov    %ecx,0x2c(%eax)
4fd12d:	89 46 44             	mov    %eax,0x44(%esi)
4fd130:	5f                   	pop    %edi
4fd131:	5e                   	pop    %esi
4fd132:	5b                   	pop    %ebx
4fd133:	59                   	pop    %ecx
4fd134:	5d                   	pop    %ebp
4fd135:	c2 0c 00             	ret    $0xc
4fd138:	53                   	push   %ebx
4fd139:	56                   	push   %esi
4fd13a:	57                   	push   %edi
4fd13b:	8b f8                	mov    %eax,%edi
4fd13d:	55                   	push   %ebp
4fd13e:	51                   	push   %ecx
4fd13f:	8b 6f 04             	mov    0x4(%edi),%ebp
4fd142:	33 c0                	xor    %eax,%eax
4fd144:	89 04 24             	mov    %eax,(%esp)
4fd147:	33 f6                	xor    %esi,%esi
4fd149:	8b 5d 40             	mov    0x40(%ebp),%ebx
4fd14c:	85 db                	test   %ebx,%ebx
4fd14e:	74 25                	je     0x4fd175
4fd150:	83 3b 00             	cmpl   $0x0,(%ebx)
4fd153:	75 19                	jne    0x4fd16e
4fd155:	8b 43 08             	mov    0x8(%ebx),%eax
4fd158:	8b 53 0c             	mov    0xc(%ebx),%edx
4fd15b:	0f af d0             	imul   %eax,%edx
4fd15e:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd161:	03 d6                	add    %esi,%edx
4fd163:	0f af c8             	imul   %eax,%ecx
4fd166:	03 0c 24             	add    (%esp),%ecx
4fd169:	8b f2                	mov    %edx,%esi
4fd16b:	89 0c 24             	mov    %ecx,(%esp)
4fd16e:	8b 5b 2c             	mov    0x2c(%ebx),%ebx
4fd171:	85 db                	test   %ebx,%ebx
4fd173:	75 db                	jne    0x4fd150
4fd175:	8b 5d 44             	mov    0x44(%ebp),%ebx
4fd178:	85 db                	test   %ebx,%ebx
4fd17a:	74 2b                	je     0x4fd1a7
4fd17c:	83 3b 00             	cmpl   $0x0,(%ebx)
4fd17f:	75 1f                	jne    0x4fd1a0
4fd181:	8b 43 08             	mov    0x8(%ebx),%eax
4fd184:	8b 53 0c             	mov    0xc(%ebx),%edx
4fd187:	0f af d0             	imul   %eax,%edx
4fd18a:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd18d:	0f af c8             	imul   %eax,%ecx
4fd190:	c1 e2 07             	shl    $0x7,%edx
4fd193:	c1 e1 07             	shl    $0x7,%ecx
4fd196:	03 d6                	add    %esi,%edx
4fd198:	03 0c 24             	add    (%esp),%ecx
4fd19b:	8b f2                	mov    %edx,%esi
4fd19d:	89 0c 24             	mov    %ecx,(%esp)
4fd1a0:	8b 5b 2c             	mov    0x2c(%ebx),%ebx
4fd1a3:	85 db                	test   %ebx,%ebx
4fd1a5:	75 d5                	jne    0x4fd17c
4fd1a7:	85 f6                	test   %esi,%esi
4fd1a9:	0f 8e 16 01 00 00    	jle    0x4fd2c5
4fd1af:	8b 45 48             	mov    0x48(%ebp),%eax
4fd1b2:	8b d6                	mov    %esi,%edx
4fd1b4:	50                   	push   %eax
4fd1b5:	8b c7                	mov    %edi,%eax
4fd1b7:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4fd1bb:	e8 48 07 00 00       	call   0x4fd908
4fd1c0:	8b c8                	mov    %eax,%ecx
4fd1c2:	3b 0c 24             	cmp    (%esp),%ecx
4fd1c5:	7c 07                	jl     0x4fd1ce
4fd1c7:	be 00 ca 9a 3b       	mov    $0x3b9aca00,%esi
4fd1cc:	eb 10                	jmp    0x4fd1de
4fd1ce:	8b c1                	mov    %ecx,%eax
4fd1d0:	99                   	cltd
4fd1d1:	f7 fe                	idiv   %esi
4fd1d3:	8b f0                	mov    %eax,%esi
4fd1d5:	85 f6                	test   %esi,%esi
4fd1d7:	7f 05                	jg     0x4fd1de
4fd1d9:	be 01 00 00 00       	mov    $0x1,%esi
4fd1de:	8b 5d 40             	mov    0x40(%ebp),%ebx
4fd1e1:	85 db                	test   %ebx,%ebx
4fd1e3:	74 6b                	je     0x4fd250
4fd1e5:	83 3b 00             	cmpl   $0x0,(%ebx)
4fd1e8:	75 5f                	jne    0x4fd249
4fd1ea:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd1ed:	8b c1                	mov    %ecx,%eax
4fd1ef:	48                   	dec    %eax
4fd1f0:	33 d2                	xor    %edx,%edx
4fd1f2:	f7 73 0c             	divl   0xc(%ebx)
4fd1f5:	40                   	inc    %eax
4fd1f6:	3b f0                	cmp    %eax,%esi
4fd1f8:	7c 05                	jl     0x4fd1ff
4fd1fa:	89 4b 10             	mov    %ecx,0x10(%ebx)
4fd1fd:	eb 20                	jmp    0x4fd21f
4fd1ff:	8b c6                	mov    %esi,%eax
4fd201:	f7 6b 0c             	imull  0xc(%ebx)
4fd204:	89 43 10             	mov    %eax,0x10(%ebx)
4fd207:	8b c7                	mov    %edi,%eax
4fd209:	8b 4b 04             	mov    0x4(%ebx),%ecx
4fd20c:	8d 53 30             	lea    0x30(%ebx),%edx