4c5f41:	8b c3                	mov    %ebx,%eax
4c5f43:	e8 8c 28 f6 ff       	call   0x4287d4
4c5f48:	8b 55 e8             	mov    -0x18(%ebp),%edx
4c5f4b:	4a                   	dec    %edx
4c5f4c:	8b ce                	mov    %esi,%ecx
4c5f4e:	8b c3                	mov    %ebx,%eax
4c5f50:	e8 1f 28 f6 ff       	call   0x428774
4c5f55:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c5f58:	3b 45 f0             	cmp    -0x10(%ebp),%eax
4c5f5b:	75 38                	jne    0x4c5f95
4c5f5d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c5f60:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4c5f63:	7c 04                	jl     0x4c5f69
4c5f65:	48                   	dec    %eax
4c5f66:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c5f69:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5f6c:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4c5f6f:	7f 04                	jg     0x4c5f75
4c5f71:	40                   	inc    %eax
4c5f72:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c5f75:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4c5f78:	41                   	inc    %ecx
4c5f79:	8b 75 e8             	mov    -0x18(%ebp),%esi
4c5f7c:	4e                   	dec    %esi
4c5f7d:	8b d6                	mov    %esi,%edx
4c5f7f:	8b c3                	mov    %ebx,%eax
4c5f81:	e8 4e 28 f6 ff       	call   0x4287d4
4c5f86:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4c5f89:	49                   	dec    %ecx
4c5f8a:	8b d6                	mov    %esi,%edx
4c5f8c:	8b c3                	mov    %ebx,%eax
4c5f8e:	e8 e1 27 f6 ff       	call   0x428774
4c5f93:	eb 3d                	jmp    0x4c5fd2
4c5f95:	8b 45 e0             	mov    -0x20(%ebp),%eax
4c5f98:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4c5f9b:	75 35                	jne    0x4c5fd2
4c5f9d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c5fa0:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
4c5fa3:	7c 04                	jl     0x4c5fa9
4c5fa5:	48                   	dec    %eax
4c5fa6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4c5fa9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c5fac:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4c5faf:	7f 04                	jg     0x4c5fb5
4c5fb1:	40                   	inc    %eax
4c5fb2:	89 45 ec             	mov    %eax,-0x14(%ebp)
4c5fb5:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
4c5fb8:	41                   	inc    %ecx
4c5fb9:	8b 75 e0             	mov    -0x20(%ebp),%esi
4c5fbc:	8b d6                	mov    %esi,%edx
4c5fbe:	8b c3                	mov    %ebx,%eax
4c5fc0:	e8 0f 28 f6 ff       	call   0x4287d4
4c5fc5:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4c5fc8:	49                   	dec    %ecx
4c5fc9:	8b d6                	mov    %esi,%edx
4c5fcb:	8b c3                	mov    %ebx,%eax
4c5fcd:	e8 a2 27 f6 ff       	call   0x428774
4c5fd2:	5f                   	pop    %edi
4c5fd3:	5e                   	pop    %esi
4c5fd4:	5b                   	pop    %ebx
4c5fd5:	8b e5                	mov    %ebp,%esp
4c5fd7:	5d                   	pop    %ebp
4c5fd8:	c2 04 00             	ret    $0x4
4c5fdb:	90                   	nop
4c5fdc:	55                   	push   %ebp
4c5fdd:	8b ec                	mov    %esp,%ebp
4c5fdf:	83 c4 b8             	add    $0xffffffb8,%esp
4c5fe2:	53                   	push   %ebx
4c5fe3:	56                   	push   %esi
4c5fe4:	57                   	push   %edi
4c5fe5:	8b 75 10             	mov    0x10(%ebp),%esi
4c5fe8:	8d 7d c8             	lea    -0x38(%ebp),%edi
4c5feb:	51                   	push   %ecx
4c5fec:	b9 0a 00 00 00       	mov    $0xa,%ecx
4c5ff1:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4c5ff3:	59                   	pop    %ecx
4c5ff4:	8b f1                	mov    %ecx,%esi
4c5ff6:	8d 7d f0             	lea    -0x10(%ebp),%edi
4c5ff9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c5ffd:	8b f2                	mov    %edx,%esi
4c5fff:	8b d8                	mov    %eax,%ebx
4c6001:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4c6005:	0f 84 0a 01 00 00    	je     0x4c6115
4c600b:	8b 45 c8             	mov    -0x38(%ebp),%eax
4c600e:	25 04 20 00 00       	and    $0x2004,%eax
4c6013:	3d 04 20 00 00       	cmp    $0x2004,%eax
4c6018:	0f 94 c0             	sete   %al
4c601b:	f6 45 cc 01          	testb  $0x1,-0x34(%ebp)
4c601f:	75 3d                	jne    0x4c605e
4c6021:	84 c0                	test   %al,%al
4c6023:	75 39                	jne    0x4c605e
4c6025:	56                   	push   %esi
4c6026:	8d 75 f0             	lea    -0x10(%ebp),%esi
4c6029:	8d 7d b8             	lea    -0x48(%ebp),%edi
4c602c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c602f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6030:	5e                   	pop    %esi
4c6031:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c6034:	83 c0 02             	add    $0x2,%eax
4c6037:	89 45 c0             	mov    %eax,-0x40(%ebp)
4c603a:	8b 53 10             	mov    0x10(%ebx),%edx
4c603d:	8b 46 14             	mov    0x14(%esi),%eax
4c6040:	e8 3f 22 f6 ff       	call   0x428284
4c6045:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4c6048:	83 c0 09             	add    $0x9,%eax
4c604b:	01 45 f0             	add    %eax,-0x10(%ebp)
4c604e:	8b 93 e4 00 00 00    	mov    0xe4(%ebx),%edx
4c6054:	8b 46 10             	mov    0x10(%esi),%eax
4c6057:	e8 28 1f f6 ff       	call   0x427f84
4c605c:	eb 0e                	jmp    0x4c606c
4c605e:	8b 93 e8 00 00 00    	mov    0xe8(%ebx),%edx
4c6064:	8b 46 10             	mov    0x10(%esi),%eax
4c6067:	e8 18 1f f6 ff       	call   0x427f84
4c606c:	8b 45 c8             	mov    -0x38(%ebp),%eax
4c606f:	25 00 10 00 00       	and    $0x1000,%eax
4c6074:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c6079:	75 66                	jne    0x4c60e1
4c607b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c607e:	d1 f8                	sar    $1,%eax
4c6080:	79 03                	jns    0x4c6085
4c6082:	83 d0 00             	adc    $0x0,%eax
4c6085:	40                   	inc    %eax
4c6086:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c6089:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
4c608d:	83 6d f8 02          	subl   $0x2,-0x8(%ebp)
4c6091:	8b 45 f4             	mov    -0xc(%ebp),%eax
4c6094:	40                   	inc    %eax
4c6095:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c6098:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c609b:	50                   	push   %eax
4c609c:	8b 7d f4             	mov    -0xc(%ebp),%edi
4c609f:	57                   	push   %edi
4c60a0:	68 ff ff ff 00       	push   $0xffffff
4c60a5:	8b c6                	mov    %esi,%eax
4c60a7:	e8 14 2c f6 ff       	call   0x428cc0
4c60ac:	8b cf                	mov    %edi,%ecx
4c60ae:	8b 55 f0             	mov    -0x10(%ebp),%edx
4c60b1:	e8 da 2d fc ff       	call   0x488e90
4c60b6:	ff 4d f4             	decl   -0xc(%ebp)
4c60b9:	ff 4d f0             	decl   -0x10(%ebp)
4c60bc:	ff 4d f8             	decl   -0x8(%ebp)
4c60bf:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c60c2:	50                   	push   %eax
4c60c3:	8b 7d f4             	mov    -0xc(%ebp),%edi
4c60c6:	57                   	push   %edi
4c60c7:	8b 43 10             	mov    0x10(%ebx),%eax
4c60ca:	50                   	push   %eax
4c60cb:	8b c6                	mov    %esi,%eax
4c60cd:	e8 ee 2b f6 ff       	call   0x428cc0
4c60d2:	8b cf                	mov    %edi,%ecx
4c60d4:	8b 55 f0             	mov    -0x10(%ebp),%edx
4c60d7:	e8 b4 2d fc ff       	call   0x488e90
4c60dc:	e9 93 00 00 00       	jmp    0x4c6174
4c60e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c60e4:	d1 f8                	sar    $1,%eax
4c60e6:	79 03                	jns    0x4c60eb
4c60e8:	83 d0 00             	adc    $0x0,%eax
4c60eb:	89 45 f4             	mov    %eax,-0xc(%ebp)
4c60ee:	bb 0e 00 00 00       	mov    $0xe,%ebx
4c60f3:	eb 14                	jmp    0x4c6109
4c60f5:	68 90 90 90 00       	push   $0x909090
4c60fa:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4c60fd:	8b d3                	mov    %ebx,%edx
4c60ff:	8b c6                	mov    %esi,%eax
4c6101:	e8 4e 2b f6 ff       	call   0x428c54
4c6106:	83 c3 03             	add    $0x3,%ebx
4c6109:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c610c:	83 e8 0e             	sub    $0xe,%eax
4c610f:	3b d8                	cmp    %eax,%ebx
4c6111:	7c e2                	jl     0x4c60f5
4c6113:	eb 5f                	jmp    0x4c6174
4c6115:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
4c6119:	74 59                	je     0x4c6174
4c611b:	83 45 f4 04          	addl   $0x4,-0xc(%ebp)
4c611f:	83 6d fc 02          	subl   $0x2,-0x4(%ebp)
4c6123:	8b 45 f8             	mov    -0x8(%ebp),%eax
4c6126:	d1 f8                	sar    $1,%eax
4c6128:	79 03                	jns    0x4c612d
4c612a:	83 d0 00             	adc    $0x0,%eax
4c612d:	89 45 f0             	mov    %eax,-0x10(%ebp)
4c6130:	8b 7d f0             	mov    -0x10(%ebp),%edi
4c6133:	57                   	push   %edi
4c6134:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c6137:	50                   	push   %eax
4c6138:	68 ff ff ff 00       	push   $0xffffff
4c613d:	8b c6                	mov    %esi,%eax
4c613f:	e8 7c 2b f6 ff       	call   0x428cc0
4c6144:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4c6147:	8b d7                	mov    %edi,%edx
4c6149:	e8 42 2d fc ff       	call   0x488e90
4c614e:	ff 4d f4             	decl   -0xc(%ebp)
4c6151:	ff 4d f0             	decl   -0x10(%ebp)
4c6154:	ff 4d fc             	decl   -0x4(%ebp)
4c6157:	8b 7d f0             	mov    -0x10(%ebp),%edi
4c615a:	57                   	push   %edi
4c615b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4c615e:	50                   	push   %eax
4c615f:	8b 43 10             	mov    0x10(%ebx),%eax
4c6162:	50                   	push   %eax
4c6163:	8b c6                	mov    %esi,%eax
4c6165:	e8 56 2b f6 ff       	call   0x428cc0
4c616a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4c616d:	8b d7                	mov    %edi,%edx
4c616f:	e8 1c 2d fc ff       	call   0x488e90
4c6174:	5f                   	pop    %edi
4c6175:	5e                   	pop    %esi
4c6176:	5b                   	pop    %ebx
4c6177:	8b e5                	mov    %ebp,%esp
4c6179:	5d                   	pop    %ebp
4c617a:	c2 0c 00             	ret    $0xc
4c617d:	8d 40 00             	lea    0x0(%eax),%eax
4c6180:	a8 04                	test   $0x4,%al
4c6182:	74 03                	je     0x4c6187
4c6184:	b0 03                	mov    $0x3,%al
4c6186:	c3                   	ret
4c6187:	a8 02                	test   $0x2,%al
4c6189:	74 04                	je     0x4c618f
4c618b:	b0 04                	mov    $0x4,%al
4c618d:	eb 02                	jmp    0x4c6191
4c618f:	33 c0                	xor    %eax,%eax
4c6191:	c3                   	ret
4c6192:	8b c0                	mov    %eax,%eax
4c6194:	55                   	push   %ebp
4c6195:	8b ec                	mov    %esp,%ebp
4c6197:	83 c4 d8             	add    $0xffffffd8,%esp
4c619a:	53                   	push   %ebx
4c619b:	56                   	push   %esi
4c619c:	57                   	push   %edi
4c619d:	8b f1                	mov    %ecx,%esi
4c619f:	8d 7d e9             	lea    -0x17(%ebp),%edi
4c61a2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61a3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61a4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61a5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61a6:	8b da                	mov    %edx,%ebx
4c61a8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4c61ab:	8b 7d 08             	mov    0x8(%ebp),%edi
4c61ae:	8b 47 04             	mov    0x4(%edi),%eax
4c61b1:	8b d0                	mov    %eax,%edx
4c61b3:	81 e2 01 10 00 00    	and    $0x1001,%edx
4c61b9:	81 fa 01 10 00 00    	cmp    $0x1001,%edx
4c61bf:	74 27                	je     0x4c61e8
4c61c1:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c61c6:	74 20                	je     0x4c61e8
4c61c8:	8b d0                	mov    %eax,%edx
4c61ca:	81 e2 04 10 00 00    	and    $0x1004,%edx
4c61d0:	81 fa 04 10 00 00    	cmp    $0x1004,%edx
4c61d6:	74 10                	je     0x4c61e8
4c61d8:	25 02 10 00 00       	and    $0x1002,%eax
4c61dd:	3d 02 10 00 00       	cmp    $0x1002,%eax
4c61e2:	0f 85 0a 02 00 00    	jne    0x4c63f2
4c61e8:	8b 45 f5             	mov    -0xb(%ebp),%eax
4c61eb:	3b 45 f1             	cmp    -0xf(%ebp),%eax
4c61ee:	7d 44                	jge    0x4c6234
4c61f0:	57                   	push   %edi
4c61f1:	8d 75 e9             	lea    -0x17(%ebp),%esi
4c61f4:	8d 7d d9             	lea    -0x27(%ebp),%edi
4c61f7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c61fb:	5f                   	pop    %edi
4c61fc:	83 45 dd 02          	addl   $0x2,-0x23(%ebp)
4c6200:	83 e8 02             	sub    $0x2,%eax
4c6203:	89 45 e5             	mov    %eax,-0x1b(%ebp)
4c6206:	68 ff ff ff 00       	push   $0xffffff
4c620b:	6a 01                	push   $0x1
4c620d:	8d 55 e9             	lea    -0x17(%ebp),%edx
4c6210:	b9 d0 d8 dc 00       	mov    $0xdcd8d0,%ecx
4c6215:	8b c3                	mov    %ebx,%eax
4c6217:	e8 24 d7 ff ff       	call   0x4c3940
4c621c:	68 ff ff ff 00       	push   $0xffffff
4c6221:	6a 01                	push   $0x1
4c6223:	8d 55 d9             	lea    -0x27(%ebp),%edx
4c6226:	b9 d0 d8 dc 00       	mov    $0xdcd8d0,%ecx
4c622b:	8b c3                	mov    %ebx,%eax
4c622d:	e8 0e d7 ff ff       	call   0x4c3940
4c6232:	eb 16                	jmp    0x4c624a
4c6234:	68 ff ff ff 00       	push   $0xffffff
4c6239:	6a 00                	push   $0x0
4c623b:	8d 55 e9             	lea    -0x17(%ebp),%edx
4c623e:	b9 d0 d8 dc 00       	mov    $0xdcd8d0,%ecx
4c6243:	8b c3                	mov    %ebx,%eax
4c6245:	e8 f6 d6 ff ff       	call   0x4c3940
4c624a:	57                   	push   %edi
4c624b:	8d 75 e9             	lea    -0x17(%ebp),%esi
4c624e:	8d 7d d9             	lea    -0x27(%ebp),%edi
4c6251:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6252:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6253:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6254:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4c6255:	5f                   	pop    %edi
4c6256:	8b 45 e1             	mov    -0x1f(%ebp),%eax
4c6259:	48                   	dec    %eax
4c625a:	89 45 d9             	mov    %eax,-0x27(%ebp)
4c625d:	ff 45 dd             	incl   -0x23(%ebp)
4c6260:	8b 15 dc b2 6a 00    	mov    0x6ab2dc,%edx
4c6266:	8b 43 10             	mov    0x10(%ebx),%eax
4c6269:	e8 16 1d f6 ff       	call   0x427f84
4c626e:	8b 4d f5             	mov    -0xb(%ebp),%ecx
4c6271:	49                   	dec    %ecx
4c6272:	8b 55 e9             	mov    -0x17(%ebp),%edx
4c6275:	83 c2 02             	add    $0x2,%edx
4c6278:	8b c3                	mov    %ebx,%eax
4c627a:	e8 55 25 f6 ff       	call   0x4287d4
4c627f:	8b 4d f5             	mov    -0xb(%ebp),%ecx
4c6282:	49                   	dec    %ecx
4c6283:	8b 55 f1             	mov    -0xf(%ebp),%edx
4c6286:	83 ea 03             	sub    $0x3,%edx
4c6289:	8b c3                	mov    %ebx,%eax
4c628b:	e8 e4 24 f6 ff       	call   0x428774
4c6290:	8b 4d f5             	mov    -0xb(%ebp),%ecx
4c6293:	83 e9 03             	sub    $0x3,%ecx
4c6296:	8b 55 f1             	mov    -0xf(%ebp),%edx
4c6299:	4a                   	dec    %edx
4c629a:	8b c3                	mov    %ebx,%eax
4c629c:	e8 d3 24 f6 ff       	call   0x428774
4c62a1:	8b 55 f1             	mov    -0xf(%ebp),%edx
4c62a4:	4a                   	dec    %edx
4c62a5:	8b 4d ed             	mov    -0x13(%ebp),%ecx
4c62a8:	8b c3                	mov    %ebx,%eax
4c62aa:	e8 c5 24 f6 ff       	call   0x428774
4c62af:	ba ff ff ff 00       	mov    $0xffffff,%edx
4c62b4:	8b 43 10             	mov    0x10(%ebx),%eax
4c62b7:	e8 c8 1c f6 ff       	call   0x427f84
4c62bc:	8b 4d f5             	mov    -0xb(%ebp),%ecx
4c62bf:	83 e9 02             	sub    $0x2,%ecx
4c62c2:	8b 55 e9             	mov    -0x17(%ebp),%edx
4c62c5:	42                   	inc    %edx
4c62c6:	8b c3                	mov    %ebx,%eax
4c62c8:	e8 07 25 f6 ff       	call   0x4287d4
4c62cd:	8b 4d f5             	mov    -0xb(%ebp),%ecx
4c62d0:	83 e9 03             	sub    $0x3,%ecx
4c62d3:	8b 55 e9             	mov    -0x17(%ebp),%edx
4c62d6:	8b c3                	mov    %ebx,%eax
4c62d8:	e8 97 24 f6 ff       	call   0x428774
4c62dd:	8b 4d ed             	mov    -0x13(%ebp),%ecx
4c62e0:	83 c1 02             	add    $0x2,%ecx
4c62e3:	8b 55 e9             	mov    -0x17(%ebp),%edx
4c62e6:	8b c3                	mov    %ebx,%eax
4c62e8:	e8 87 24 f6 ff       	call   0x428774
4c62ed:	8b 55 e9             	mov    -0x17(%ebp),%edx
4c62f0:	83 c2 02             	add    $0x2,%edx
4c62f3:	8b 4d ed             	mov    -0x13(%ebp),%ecx
4c62f6:	8b c3                	mov    %ebx,%eax