4f0f7b:	e9 a7 00 00 00       	jmp    0x4f1027
4f0f80:	66 83 f8 03          	cmp    $0x3,%ax
4f0f84:	0f 85 9d 00 00 00    	jne    0x4f1027
4f0f8a:	8b 44 24 0a          	mov    0xa(%esp),%eax
4f0f8e:	83 f8 01             	cmp    $0x1,%eax
4f0f91:	75 13                	jne    0x4f0fa6
4f0f93:	8b c3                	mov    %ebx,%eax
4f0f95:	8d 54 24 06          	lea    0x6(%esp),%edx
4f0f99:	e8 ba fc ff ff       	call   0x4f0c58
4f0f9e:	89 04 24             	mov    %eax,(%esp)
4f0fa1:	e9 81 00 00 00       	jmp    0x4f1027
4f0fa6:	83 f8 02             	cmp    $0x2,%eax
4f0fa9:	75 38                	jne    0x4f0fe3
4f0fab:	8b 44 24 0e          	mov    0xe(%esp),%eax
4f0faf:	89 04 24             	mov    %eax,(%esp)
4f0fb2:	80 3b 00             	cmpb   $0x0,(%ebx)
4f0fb5:	74 16                	je     0x4f0fcd
4f0fb7:	85 c9                	test   %ecx,%ecx
4f0fb9:	75 09                	jne    0x4f0fc4
4f0fbb:	81 24 24 ff ff 00 00 	andl   $0xffff,(%esp)
4f0fc2:	eb 63                	jmp    0x4f1027
4f0fc4:	49                   	dec    %ecx
4f0fc5:	75 60                	jne    0x4f1027
4f0fc7:	c1 2c 24 10          	shrl   $0x10,(%esp)
4f0fcb:	eb 5a                	jmp    0x4f1027
4f0fcd:	85 c9                	test   %ecx,%ecx
4f0fcf:	75 06                	jne    0x4f0fd7
4f0fd1:	c1 2c 24 10          	shrl   $0x10,(%esp)
4f0fd5:	eb 50                	jmp    0x4f1027
4f0fd7:	49                   	dec    %ecx
4f0fd8:	75 4d                	jne    0x4f1027
4f0fda:	81 24 24 ff ff 00 00 	andl   $0xffff,(%esp)
4f0fe1:	eb 44                	jmp    0x4f1027
4f0fe3:	8b 53 10             	mov    0x10(%ebx),%edx
4f0fe6:	03 54 24 0e          	add    0xe(%esp),%edx
4f0fea:	8b c1                	mov    %ecx,%eax
4f0fec:	03 c0                	add    %eax,%eax
4f0fee:	03 d0                	add    %eax,%edx
4f0ff0:	8b 43 04             	mov    0x4(%ebx),%eax
4f0ff3:	33 c9                	xor    %ecx,%ecx
4f0ff5:	8b 30                	mov    (%eax),%esi
4f0ff7:	ff 56 10             	call   *0x10(%esi)
4f0ffa:	8d 54 24 04          	lea    0x4(%esp),%edx
4f0ffe:	8b 43 04             	mov    0x4(%ebx),%eax
4f1001:	b9 02 00 00 00       	mov    $0x2,%ecx
4f1006:	8b 30                	mov    (%eax),%esi
4f1008:	ff 56 08             	call   *0x8(%esi)
4f100b:	80 3b 00             	cmpb   $0x0,(%ebx)
4f100e:	75 0f                	jne    0x4f101f
4f1010:	66 8b 44 24 04       	mov    0x4(%esp),%ax
4f1015:	e8 ce fc 0f 00       	call   0x5f0ce8
4f101a:	66 89 44 24 04       	mov    %ax,0x4(%esp)
4f101f:	0f b7 44 24 04       	movzwl 0x4(%esp),%eax
4f1024:	89 04 24             	mov    %eax,(%esp)
4f1027:	8b 04 24             	mov    (%esp),%eax
4f102a:	83 c4 14             	add    $0x14,%esp
4f102d:	5f                   	pop    %edi
4f102e:	5e                   	pop    %esi
4f102f:	5b                   	pop    %ebx
4f1030:	c3                   	ret
4f1031:	8d 40 00             	lea    0x0(%eax),%eax
4f1034:	53                   	push   %ebx
4f1035:	56                   	push   %esi
4f1036:	57                   	push   %edi
4f1037:	55                   	push   %ebp
4f1038:	83 c4 f8             	add    $0xfffffff8,%esp
4f103b:	89 14 24             	mov    %edx,(%esp)
4f103e:	8b d8                	mov    %eax,%ebx
4f1040:	8b d3                	mov    %ebx,%edx
4f1042:	8b c1                	mov    %ecx,%eax
4f1044:	e8 77 fb ff ff       	call   0x4f0bc0
4f1049:	8b f0                	mov    %eax,%esi
4f104b:	85 f6                	test   %esi,%esi
4f104d:	7d 08                	jge    0x4f1057
4f104f:	33 c0                	xor    %eax,%eax
4f1051:	89 44 24 04          	mov    %eax,0x4(%esp)
4f1055:	eb 66                	jmp    0x4f10bd
4f1057:	8d 3c 76             	lea    (%esi,%esi,2),%edi
4f105a:	8b 43 08             	mov    0x8(%ebx),%eax
4f105d:	8b 44 b8 04          	mov    0x4(%eax,%edi,4),%eax
4f1061:	89 44 24 04          	mov    %eax,0x4(%esp)
4f1065:	8b 44 24 04          	mov    0x4(%esp),%eax
4f1069:	c1 e0 02             	shl    $0x2,%eax
4f106c:	e8 3b 17 f1 ff       	call   0x4027ac
4f1071:	8b 14 24             	mov    (%esp),%edx
4f1074:	89 02                	mov    %eax,(%edx)
4f1076:	83 7c 24 04 01       	cmpl   $0x1,0x4(%esp)
4f107b:	75 16                	jne    0x4f1093
4f107d:	8b 43 08             	mov    0x8(%ebx),%eax
4f1080:	8d 14 b8             	lea    (%eax,%edi,4),%edx
4f1083:	8b c3                	mov    %ebx,%eax
4f1085:	e8 ce fb ff ff       	call   0x4f0c58
4f108a:	8b 14 24             	mov    (%esp),%edx
4f108d:	8b 12                	mov    (%edx),%edx
4f108f:	89 02                	mov    %eax,(%edx)
4f1091:	eb 2a                	jmp    0x4f10bd
4f1093:	8b 6c 24 04          	mov    0x4(%esp),%ebp
4f1097:	4d                   	dec    %ebp
4f1098:	85 ed                	test   %ebp,%ebp
4f109a:	7c 21                	jl     0x4f10bd
4f109c:	45                   	inc    %ebp
4f109d:	33 ff                	xor    %edi,%edi
4f109f:	8d 04 76             	lea    (%esi,%esi,2),%eax
4f10a2:	8b 53 08             	mov    0x8(%ebx),%edx
4f10a5:	8d 14 82             	lea    (%edx,%eax,4),%edx
4f10a8:	8b c3                	mov    %ebx,%eax
4f10aa:	8b cf                	mov    %edi,%ecx
4f10ac:	e8 73 fe ff ff       	call   0x4f0f24
4f10b1:	8b 14 24             	mov    (%esp),%edx
4f10b4:	8b 12                	mov    (%edx),%edx
4f10b6:	89 04 ba             	mov    %eax,(%edx,%edi,4)
4f10b9:	47                   	inc    %edi
4f10ba:	4d                   	dec    %ebp
4f10bb:	75 e2                	jne    0x4f109f
4f10bd:	8b 44 24 04          	mov    0x4(%esp),%eax
4f10c1:	59                   	pop    %ecx
4f10c2:	5a                   	pop    %edx
4f10c3:	5d                   	pop    %ebp
4f10c4:	5f                   	pop    %edi
4f10c5:	5e                   	pop    %esi
4f10c6:	5b                   	pop    %ebx
4f10c7:	c3                   	ret
4f10c8:	53                   	push   %ebx
4f10c9:	56                   	push   %esi
4f10ca:	57                   	push   %edi
4f10cb:	55                   	push   %ebp
4f10cc:	83 c4 f8             	add    $0xfffffff8,%esp
4f10cf:	89 0c 24             	mov    %ecx,(%esp)
4f10d2:	8b d8                	mov    %eax,%ebx
4f10d4:	8b c3                	mov    %ebx,%eax
4f10d6:	92                   	xchg   %eax,%edx
4f10d7:	e8 e4 fa ff ff       	call   0x4f0bc0
4f10dc:	8b f0                	mov    %eax,%esi
4f10de:	85 f6                	test   %esi,%esi
4f10e0:	7d 08                	jge    0x4f10ea
4f10e2:	33 c0                	xor    %eax,%eax
4f10e4:	89 44 24 04          	mov    %eax,0x4(%esp)
4f10e8:	eb 46                	jmp    0x4f1130
4f10ea:	8d 3c 76             	lea    (%esi,%esi,2),%edi
4f10ed:	8b 43 08             	mov    0x8(%ebx),%eax
4f10f0:	8b 54 b8 08          	mov    0x8(%eax,%edi,4),%edx
4f10f4:	03 53 10             	add    0x10(%ebx),%edx
4f10f7:	8b 43 04             	mov    0x4(%ebx),%eax
4f10fa:	33 c9                	xor    %ecx,%ecx
4f10fc:	8b 28                	mov    (%eax),%ebp
4f10fe:	ff 55 10             	call   *0x10(%ebp)
4f1101:	8b 43 08             	mov    0x8(%ebx),%eax
4f1104:	8b 44 b8 04          	mov    0x4(%eax,%edi,4),%eax
4f1108:	e8 9f 16 f1 ff       	call   0x4027ac
4f110d:	89 44 24 04          	mov    %eax,0x4(%esp)
4f1111:	8b 43 08             	mov    0x8(%ebx),%eax
4f1114:	8b 4c b8 04          	mov    0x4(%eax,%edi,4),%ecx
4f1118:	8b 54 24 04          	mov    0x4(%esp),%edx
4f111c:	8b 43 04             	mov    0x4(%ebx),%eax
4f111f:	8b 28                	mov    (%eax),%ebp
4f1121:	ff 55 08             	call   *0x8(%ebp)
4f1124:	8b 43 08             	mov    0x8(%ebx),%eax
4f1127:	8b 44 b8 04          	mov    0x4(%eax,%edi,4),%eax
4f112b:	8b 14 24             	mov    (%esp),%edx
4f112e:	89 02                	mov    %eax,(%edx)
4f1130:	8b 44 24 04          	mov    0x4(%esp),%eax
4f1134:	59                   	pop    %ecx
4f1135:	5a                   	pop    %edx
4f1136:	5d                   	pop    %ebp
4f1137:	5f                   	pop    %edi
4f1138:	5e                   	pop    %esi
4f1139:	5b                   	pop    %ebx
4f113a:	c3                   	ret
4f113b:	90                   	nop
4f113c:	55                   	push   %ebp
4f113d:	8b ec                	mov    %esp,%ebp
4f113f:	83 c4 e0             	add    $0xffffffe0,%esp
4f1142:	53                   	push   %ebx
4f1143:	56                   	push   %esi
4f1144:	57                   	push   %edi
4f1145:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4f1148:	8b da                	mov    %edx,%ebx
4f114a:	8b f0                	mov    %eax,%esi
4f114c:	c6 45 ed 00          	movb   $0x0,-0x13(%ebp)
4f1150:	8b 45 fc             	mov    -0x4(%ebp),%eax
4f1153:	8b 40 04             	mov    0x4(%eax),%eax
4f1156:	e8 b9 dc f2 ff       	call   0x41ee14
4f115b:	8b d6                	mov    %esi,%edx
4f115d:	8b c3                	mov    %ebx,%eax
4f115f:	e8 5c fa ff ff       	call   0x4f0bc0
4f1164:	8b d8                	mov    %eax,%ebx
4f1166:	85 db                	test   %ebx,%ebx
4f1168:	0f 8c 78 02 00 00    	jl     0x4f13e6
4f116e:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4f1171:	8b 56 08             	mov    0x8(%esi),%edx
4f1174:	8b 54 82 08          	mov    0x8(%edx,%eax,4),%edx
4f1178:	03 56 10             	add    0x10(%esi),%edx
4f117b:	8b 46 04             	mov    0x4(%esi),%eax
4f117e:	33 c9                	xor    %ecx,%ecx
4f1180:	8b 38                	mov    (%eax),%edi
4f1182:	ff 57 10             	call   *0x10(%edi)
4f1185:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4f1188:	8b 56 08             	mov    0x8(%esi),%edx
4f118b:	8b 44 82 04          	mov    0x4(%edx,%eax,4),%eax
4f118f:	e8 18 16 f1 ff       	call   0x4027ac
4f1194:	89 45 f0             	mov    %eax,-0x10(%ebp)
4f1197:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4f119a:	8b 56 08             	mov    0x8(%esi),%edx
4f119d:	8b 4c 82 04          	mov    0x4(%edx,%eax,4),%ecx
4f11a1:	8b 55 f0             	mov    -0x10(%ebp),%edx
4f11a4:	8b 46 04             	mov    0x4(%esi),%eax
4f11a7:	8b 38                	mov    (%eax),%edi
4f11a9:	ff 57 08             	call   *0x8(%edi)
4f11ac:	8d 04 5b             	lea    (%ebx,%ebx,2),%eax
4f11af:	8b 56 08             	mov    0x8(%esi),%edx
4f11b2:	8b 5c 82 04          	mov    0x4(%edx,%eax,4),%ebx
4f11b6:	33 d2                	xor    %edx,%edx
4f11b8:	55                   	push   %ebp
4f11b9:	68 df 13 4f 00       	push   $0x4f13df
4f11be:	64 ff 32             	push   %fs:(%edx)
4f11c1:	64 89 22             	mov    %esp,%fs:(%edx)
4f11c4:	83 fb 02             	cmp    $0x2,%ebx
4f11c7:	7d 0a                	jge    0x4f11d3
4f11c9:	e8 22 31 f1 ff       	call   0x4042f0
4f11ce:	e9 13 02 00 00       	jmp    0x4f13e6
4f11d3:	8a 16                	mov    (%esi),%dl
4f11d5:	80 f2 01             	xor    $0x1,%dl
4f11d8:	8b 45 f0             	mov    -0x10(%ebp),%eax
4f11db:	66 8b 00             	mov    (%eax),%ax
4f11de:	e8 c1 38 11 00       	call   0x604aa4
4f11e3:	66 89 45 ee          	mov    %ax,-0x12(%ebp)
4f11e7:	66 81 7d ee 00 01    	cmpw   $0x100,-0x12(%ebp)
4f11ed:	77 0e                	ja     0x4f11fd
4f11ef:	0f b7 45 ee          	movzwl -0x12(%ebp),%eax
4f11f3:	c1 e0 02             	shl    $0x2,%eax
4f11f6:	8d 04 40             	lea    (%eax,%eax,2),%eax
4f11f9:	3b d8                	cmp    %eax,%ebx
4f11fb:	7d 0a                	jge    0x4f1207
4f11fd:	e8 ee 30 f1 ff       	call   0x4042f0
4f1202:	e9 df 01 00 00       	jmp    0x4f13e6
4f1207:	8d 55 ee             	lea    -0x12(%ebp),%edx
4f120a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4f120d:	8b 40 04             	mov    0x4(%eax),%eax
4f1210:	b9 02 00 00 00       	mov    $0x2,%ecx
4f1215:	8b 18                	mov    (%eax),%ebx
4f1217:	ff 53 0c             	call   *0xc(%ebx)
4f121a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4f121d:	8b 40 04             	mov    0x4(%eax),%eax
4f1220:	e8 93 d4 f2 ff       	call   0x41e6b8
4f1225:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4f1228:	0f b7 45 ee          	movzwl -0x12(%ebp),%eax
4f122c:	c1 e0 02             	shl    $0x2,%eax
4f122f:	8d 04 40             	lea    (%eax,%eax,2),%eax
4f1232:	03 45 e4             	add    -0x1c(%ebp),%eax
4f1235:	89 45 e8             	mov    %eax,-0x18(%ebp)
4f1238:	0f b7 45 ee          	movzwl -0x12(%ebp),%eax
4f123c:	48                   	dec    %eax
4f123d:	85 c0                	test   %eax,%eax
4f123f:	0f 8c 67 01 00 00    	jl     0x4f13ac
4f1245:	40                   	inc    %eax
4f1246:	89 45 e0             	mov    %eax,-0x20(%ebp)
4f1249:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
4f1250:	8b 45 f8             	mov    -0x8(%ebp),%eax
4f1253:	c1 e0 02             	shl    $0x2,%eax
4f1256:	8d 04 40             	lea    (%eax,%eax,2),%eax
4f1259:	83 c0 02             	add    $0x2,%eax
4f125c:	8b 55 f0             	mov    -0x10(%ebp),%edx
4f125f:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
4f1262:	8a 16                	mov    (%esi),%dl
4f1264:	80 f2 01             	xor    $0x1,%dl
4f1267:	66 8b 03             	mov    (%ebx),%ax
4f126a:	e8 35 38 11 00       	call   0x604aa4
4f126f:	66 89 03             	mov    %ax,(%ebx)
4f1272:	8a 16                	mov    (%esi),%dl
4f1274:	80 f2 01             	xor    $0x1,%dl
4f1277:	66 8b 43 02          	mov    0x2(%ebx),%ax
4f127b:	e8 24 38 11 00       	call   0x604aa4
4f1280:	66 89 43 02          	mov    %ax,0x2(%ebx)
4f1284:	8a 16                	mov    (%esi),%dl
4f1286:	80 f2 01             	xor    $0x1,%dl
4f1289:	8b 43 04             	mov    0x4(%ebx),%eax
4f128c:	e8 37 38 11 00       	call   0x604ac8
4f1291:	89 43 04             	mov    %eax,0x4(%ebx)
4f1294:	8a 16                	mov    (%esi),%dl
4f1296:	80 f2 01             	xor    $0x1,%dl
4f1299:	8b 43 08             	mov    0x8(%ebx),%eax
4f129c:	e8 27 38 11 00       	call   0x604ac8
4f12a1:	89 43 08             	mov    %eax,0x8(%ebx)
4f12a4:	66 8b 43 02          	mov    0x2(%ebx),%ax
4f12a8:	66 83 f8 0c          	cmp    $0xc,%ax
4f12ac:	76 0a                	jbe    0x4f12b8
4f12ae:	e8 3d 30 f1 ff       	call   0x4042f0
4f12b3:	e9 2e 01 00 00       	jmp    0x4f13e6
4f12b8:	8b 53 04             	mov    0x4(%ebx),%edx
4f12bb:	0f b7 c0             	movzwl %ax,%eax
4f12be:	0f af 14 85 d0 d4 68 	imul   0x68d4d0(,%eax,4),%edx
4f12c5:	00
4f12c6:	89 55 f4             	mov    %edx,-0xc(%ebp)
4f12c9:	8b 46 04             	mov    0x4(%esi),%eax
4f12cc:	e8 1b d4 f2 ff       	call   0x41e6ec
4f12d1:	52                   	push   %edx
4f12d2:	50                   	push   %eax
4f12d3:	8b 43 08             	mov    0x8(%ebx),%eax
4f12d6:	03 45 f4             	add    -0xc(%ebp),%eax
4f12d9:	99                   	cltd
4f12da:	3b 54 24 04          	cmp    0x4(%esp),%edx
4f12de:	75 09                	jne    0x4f12e9
4f12e0:	3b 04 24             	cmp    (%esp),%eax
4f12e3:	5a                   	pop    %edx
4f12e4:	58                   	pop    %eax
4f12e5:	76 10                	jbe    0x4f12f7
4f12e7:	eb 04                	jmp    0x4f12ed
4f12e9:	5a                   	pop    %edx
4f12ea:	58                   	pop    %eax
4f12eb:	7e 0a                	jle    0x4f12f7
4f12ed:	83 7d f4 04          	cmpl   $0x4,-0xc(%ebp)
4f12f1:	0f 8f a9 00 00 00    	jg     0x4f13a0
4f12f7:	8b 46 04             	mov    0x4(%esi),%eax
4f12fa:	e8 ed d3 f2 ff       	call   0x41e6ec
4f12ff:	52                   	push   %edx
4f1300:	50                   	push   %eax
4f1301:	8b 43 04             	mov    0x4(%ebx),%eax
4f1304:	99                   	cltd
4f1305:	3b 54 24 04          	cmp    0x4(%esp),%edx
4f1309:	75 0d                	jne    0x4f1318
4f130b:	3b 04 24             	cmp    (%esp),%eax
4f130e:	5a                   	pop    %edx
4f130f:	58                   	pop    %eax
4f1310:	0f 83 8a 00 00 00    	jae    0x4f13a0
4f1316:	eb 08                	jmp    0x4f1320
4f1318:	5a                   	pop    %edx
4f1319:	58                   	pop    %eax
4f131a:	0f 8d 80 00 00 00    	jge    0x4f13a0
4f1320:	83 7d f4 04          	cmpl   $0x4,-0xc(%ebp)
4f1324:	7e 49                	jle    0x4f136f
4f1326:	8b 56 10             	mov    0x10(%esi),%edx
4f1329:	03 53 08             	add    0x8(%ebx),%edx
4f132c:	8b 46 04             	mov    0x4(%esi),%eax
4f132f:	33 c9                	xor    %ecx,%ecx
4f1331:	8b 38                	mov    (%eax),%edi
4f1333:	ff 57 10             	call   *0x10(%edi)
4f1336:	8b 45 e8             	mov    -0x18(%ebp),%eax
4f1339:	89 43 08             	mov    %eax,0x8(%ebx)
4f133c:	8b 45 e8             	mov    -0x18(%ebp),%eax
4f133f:	99                   	cltd
4f1340:	52                   	push   %edx
4f1341:	50                   	push   %eax
4f1342:	8b 45 fc             	mov    -0x4(%ebp),%eax
4f1345:	8b 40 04             	mov    0x4(%eax),%eax
4f1348:	e8 8b d3 f2 ff       	call   0x41e6d8
4f134d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4f1350:	99                   	cltd
4f1351:	52                   	push   %edx
4f1352:	50                   	push   %eax
4f1353:	8b 56 04             	mov    0x4(%esi),%edx