5f10ac:	8d 46 38             	lea    0x38(%esi),%eax
5f10af:	53                   	push   %ebx
5f10b0:	50                   	push   %eax
5f10b1:	e8 44 50 01 00       	call   0x6060fa
5f10b6:	83 c4 10             	add    $0x10,%esp
5f10b9:	5b                   	pop    %ebx
5f10ba:	85 c0                	test   %eax,%eax
5f10bc:	74 25                	je     0x5f10e3
5f10be:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5f10c2:	eb 1f                	jmp    0x5f10e3
5f10c4:	8b 8f 04 04 00 00    	mov    0x404(%edi),%ecx
5f10ca:	85 c9                	test   %ecx,%ecx
5f10cc:	75 02                	jne    0x5f10d0
5f10ce:	8b cf                	mov    %edi,%ecx
5f10d0:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f10d4:	8b 46 14             	mov    0x14(%esi),%eax
5f10d7:	8a 40 fc             	mov    -0x4(%eax),%al
5f10da:	88 01                	mov    %al,(%ecx)
5f10dc:	c7 46 38 01 00 00 00 	movl   $0x1,0x38(%esi)
5f10e3:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f10e9:	85 c0                	test   %eax,%eax
5f10eb:	74 02                	je     0x5f10ef
5f10ed:	8b f8                	mov    %eax,%edi
5f10ef:	89 7e 34             	mov    %edi,0x34(%esi)
5f10f2:	b0 01                	mov    $0x1,%al
5f10f4:	5f                   	pop    %edi
5f10f5:	5e                   	pop    %esi
5f10f6:	c2 04 00             	ret    $0x4
5f10f9:	8b ff                	mov    %edi,%edi
5f10fb:	55                   	push   %ebp
5f10fc:	8b ec                	mov    %esp,%ebp
5f10fe:	51                   	push   %ecx
5f10ff:	53                   	push   %ebx
5f1100:	56                   	push   %esi
5f1101:	8b f1                	mov    %ecx,%esi
5f1103:	57                   	push   %edi
5f1104:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
5f1108:	8d 7e 40             	lea    0x40(%esi),%edi
5f110b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f110f:	8b 46 14             	mov    0x14(%esi),%eax
5f1112:	ff 76 2c             	push   0x2c(%esi)
5f1115:	0f b7 58 fc          	movzwl -0x4(%eax),%ebx
5f1119:	0f b7 46 32          	movzwl 0x32(%esi),%eax
5f111d:	50                   	push   %eax
5f111e:	ff 76 04             	push   0x4(%esi)
5f1121:	ff 36                	push   (%esi)
5f1123:	e8 ef df ff ff       	call   0x5ef117
5f1128:	83 c4 10             	add    $0x10,%esp
5f112b:	84 c0                	test   %al,%al
5f112d:	75 32                	jne    0x5f1161
5f112f:	8b 8f 04 04 00 00    	mov    0x404(%edi),%ecx
5f1135:	88 5d fc             	mov    %bl,-0x4(%ebp)
5f1138:	88 45 fd             	mov    %al,-0x3(%ebp)
5f113b:	85 c9                	test   %ecx,%ecx
5f113d:	75 02                	jne    0x5f1141
5f113f:	8b cf                	mov    %edi,%ecx
5f1141:	8b 46 08             	mov    0x8(%esi),%eax
5f1144:	50                   	push   %eax
5f1145:	8b 00                	mov    (%eax),%eax
5f1147:	ff 70 04             	push   0x4(%eax)
5f114a:	8d 45 fc             	lea    -0x4(%ebp),%eax
5f114d:	50                   	push   %eax
5f114e:	51                   	push   %ecx
5f114f:	e8 ef 4c 01 00       	call   0x605e43
5f1154:	83 c4 10             	add    $0x10,%esp
5f1157:	85 c0                	test   %eax,%eax
5f1159:	79 15                	jns    0x5f1170
5f115b:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5f115f:	eb 0f                	jmp    0x5f1170
5f1161:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f1167:	85 c0                	test   %eax,%eax
5f1169:	75 02                	jne    0x5f116d
5f116b:	8b c7                	mov    %edi,%eax
5f116d:	66 89 18             	mov    %bx,(%eax)
5f1170:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f1176:	85 c0                	test   %eax,%eax
5f1178:	74 02                	je     0x5f117c
5f117a:	8b f8                	mov    %eax,%edi
5f117c:	89 7e 34             	mov    %edi,0x34(%esi)
5f117f:	b0 01                	mov    $0x1,%al
5f1181:	5f                   	pop    %edi
5f1182:	c7 46 38 01 00 00 00 	movl   $0x1,0x38(%esi)
5f1189:	5e                   	pop    %esi
5f118a:	5b                   	pop    %ebx
5f118b:	c9                   	leave
5f118c:	c2 04 00             	ret    $0x4
5f118f:	8b ff                	mov    %edi,%edi
5f1191:	55                   	push   %ebp
5f1192:	8b ec                	mov    %esp,%ebp
5f1194:	51                   	push   %ecx
5f1195:	53                   	push   %ebx
5f1196:	56                   	push   %esi
5f1197:	8b f1                	mov    %ecx,%esi
5f1199:	57                   	push   %edi
5f119a:	ff 76 2c             	push   0x2c(%esi)
5f119d:	e8 0b fb ff ff       	call   0x5f0cad
5f11a2:	59                   	pop    %ecx
5f11a3:	8b c8                	mov    %eax,%ecx
5f11a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f11a8:	83 e9 01             	sub    $0x1,%ecx
5f11ab:	74 78                	je     0x5f1225
5f11ad:	83 e9 01             	sub    $0x1,%ecx
5f11b0:	74 56                	je     0x5f1208
5f11b2:	49                   	dec    %ecx
5f11b3:	83 e9 01             	sub    $0x1,%ecx
5f11b6:	74 33                	je     0x5f11eb
5f11b8:	83 e9 04             	sub    $0x4,%ecx
5f11bb:	74 17                	je     0x5f11d4
5f11bd:	e8 37 be ff ff       	call   0x5ecff9
5f11c2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f11c8:	e8 52 bd ff ff       	call   0x5ecf1f
5f11cd:	32 c0                	xor    %al,%al
5f11cf:	e9 05 01 00 00       	jmp    0x5f12d9
5f11d4:	8b 46 20             	mov    0x20(%esi),%eax
5f11d7:	83 46 14 08          	addl   $0x8,0x14(%esi)
5f11db:	c1 e8 04             	shr    $0x4,%eax
5f11de:	a8 01                	test   $0x1,%al
5f11e0:	8b 46 14             	mov    0x14(%esi),%eax
5f11e3:	8b 78 f8             	mov    -0x8(%eax),%edi
5f11e6:	8b 58 fc             	mov    -0x4(%eax),%ebx
5f11e9:	eb 5a                	jmp    0x5f1245
5f11eb:	8b 46 20             	mov    0x20(%esi),%eax
5f11ee:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f11f2:	c1 e8 04             	shr    $0x4,%eax
5f11f5:	a8 01                	test   $0x1,%al
5f11f7:	8b 46 14             	mov    0x14(%esi),%eax
5f11fa:	74 05                	je     0x5f1201
5f11fc:	8b 40 fc             	mov    -0x4(%eax),%eax
5f11ff:	eb 3f                	jmp    0x5f1240
5f1201:	8b 78 fc             	mov    -0x4(%eax),%edi
5f1204:	33 db                	xor    %ebx,%ebx
5f1206:	eb 3d                	jmp    0x5f1245
5f1208:	8b 46 20             	mov    0x20(%esi),%eax
5f120b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f120f:	c1 e8 04             	shr    $0x4,%eax
5f1212:	a8 01                	test   $0x1,%al
5f1214:	8b 46 14             	mov    0x14(%esi),%eax
5f1217:	74 06                	je     0x5f121f
5f1219:	0f bf 40 fc          	movswl -0x4(%eax),%eax
5f121d:	eb 21                	jmp    0x5f1240
5f121f:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
5f1223:	eb 1b                	jmp    0x5f1240
5f1225:	8b 46 20             	mov    0x20(%esi),%eax
5f1228:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f122c:	c1 e8 04             	shr    $0x4,%eax
5f122f:	a8 01                	test   $0x1,%al
5f1231:	8b 46 14             	mov    0x14(%esi),%eax
5f1234:	74 06                	je     0x5f123c
5f1236:	0f be 40 fc          	movsbl -0x4(%eax),%eax
5f123a:	eb 04                	jmp    0x5f1240
5f123c:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
5f1240:	99                   	cltd
5f1241:	8b f8                	mov    %eax,%edi
5f1243:	8b da                	mov    %edx,%ebx
5f1245:	8b 4e 20             	mov    0x20(%esi),%ecx
5f1248:	8b c1                	mov    %ecx,%eax
5f124a:	c1 e8 04             	shr    $0x4,%eax
5f124d:	a8 01                	test   $0x1,%al
5f124f:	74 17                	je     0x5f1268
5f1251:	85 db                	test   %ebx,%ebx
5f1253:	7f 13                	jg     0x5f1268
5f1255:	7c 04                	jl     0x5f125b
5f1257:	85 ff                	test   %edi,%edi
5f1259:	73 0d                	jae    0x5f1268
5f125b:	f7 df                	neg    %edi
5f125d:	83 d3 00             	adc    $0x0,%ebx
5f1260:	f7 db                	neg    %ebx
5f1262:	83 c9 40             	or     $0x40,%ecx
5f1265:	89 4e 20             	mov    %ecx,0x20(%esi)
5f1268:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
5f126c:	7d 09                	jge    0x5f1277
5f126e:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
5f1275:	eb 11                	jmp    0x5f1288
5f1277:	ff 76 28             	push   0x28(%esi)
5f127a:	83 e1 f7             	and    $0xfffffff7,%ecx
5f127d:	89 4e 20             	mov    %ecx,0x20(%esi)
5f1280:	8d 4e 40             	lea    0x40(%esi),%ecx
5f1283:	e8 63 dd ff ff       	call   0x5eefeb
5f1288:	8b c7                	mov    %edi,%eax
5f128a:	0b c3                	or     %ebx,%eax
5f128c:	75 04                	jne    0x5f1292
5f128e:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
5f1292:	83 7d fc 08          	cmpl   $0x8,-0x4(%ebp)
5f1296:	8b ce                	mov    %esi,%ecx
5f1298:	ff 75 0c             	push   0xc(%ebp)
5f129b:	c6 46 3c 00          	movb   $0x0,0x3c(%esi)
5f129f:	ff 75 08             	push   0x8(%ebp)
5f12a2:	75 09                	jne    0x5f12ad
5f12a4:	53                   	push   %ebx
5f12a5:	57                   	push   %edi
5f12a6:	e8 d2 df ff ff       	call   0x5ef27d
5f12ab:	eb 06                	jmp    0x5f12b3
5f12ad:	57                   	push   %edi
5f12ae:	e8 d0 de ff ff       	call   0x5ef183
5f12b3:	8b 46 20             	mov    0x20(%esi),%eax
5f12b6:	c1 e8 07             	shr    $0x7,%eax
5f12b9:	a8 01                	test   $0x1,%al
5f12bb:	74 1a                	je     0x5f12d7
5f12bd:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
5f12c1:	74 08                	je     0x5f12cb
5f12c3:	8b 46 34             	mov    0x34(%esi),%eax
5f12c6:	80 38 30             	cmpb   $0x30,(%eax)
5f12c9:	74 0c                	je     0x5f12d7
5f12cb:	ff 4e 34             	decl   0x34(%esi)
5f12ce:	8b 4e 34             	mov    0x34(%esi),%ecx
5f12d1:	c6 01 30             	movb   $0x30,(%ecx)
5f12d4:	ff 46 38             	incl   0x38(%esi)
5f12d7:	b0 01                	mov    $0x1,%al
5f12d9:	5f                   	pop    %edi
5f12da:	5e                   	pop    %esi
5f12db:	5b                   	pop    %ebx
5f12dc:	c9                   	leave
5f12dd:	c2 08 00             	ret    $0x8
5f12e0:	8b ff                	mov    %edi,%edi
5f12e2:	55                   	push   %ebp
5f12e3:	8b ec                	mov    %esp,%ebp
5f12e5:	51                   	push   %ecx
5f12e6:	53                   	push   %ebx
5f12e7:	56                   	push   %esi
5f12e8:	8b f1                	mov    %ecx,%esi
5f12ea:	57                   	push   %edi
5f12eb:	ff 76 2c             	push   0x2c(%esi)
5f12ee:	e8 ba f9 ff ff       	call   0x5f0cad
5f12f3:	59                   	pop    %ecx
5f12f4:	8b c8                	mov    %eax,%ecx
5f12f6:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f12f9:	83 e9 01             	sub    $0x1,%ecx
5f12fc:	74 78                	je     0x5f1376
5f12fe:	83 e9 01             	sub    $0x1,%ecx
5f1301:	74 56                	je     0x5f1359
5f1303:	49                   	dec    %ecx
5f1304:	83 e9 01             	sub    $0x1,%ecx
5f1307:	74 33                	je     0x5f133c
5f1309:	83 e9 04             	sub    $0x4,%ecx
5f130c:	74 17                	je     0x5f1325
5f130e:	e8 e6 bc ff ff       	call   0x5ecff9
5f1313:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f1319:	e8 01 bc ff ff       	call   0x5ecf1f
5f131e:	32 c0                	xor    %al,%al
5f1320:	e9 09 01 00 00       	jmp    0x5f142e
5f1325:	8b 46 20             	mov    0x20(%esi),%eax
5f1328:	83 46 14 08          	addl   $0x8,0x14(%esi)
5f132c:	c1 e8 04             	shr    $0x4,%eax
5f132f:	a8 01                	test   $0x1,%al
5f1331:	8b 46 14             	mov    0x14(%esi),%eax
5f1334:	8b 78 f8             	mov    -0x8(%eax),%edi
5f1337:	8b 58 fc             	mov    -0x4(%eax),%ebx
5f133a:	eb 5a                	jmp    0x5f1396
5f133c:	8b 46 20             	mov    0x20(%esi),%eax
5f133f:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f1343:	c1 e8 04             	shr    $0x4,%eax
5f1346:	a8 01                	test   $0x1,%al
5f1348:	8b 46 14             	mov    0x14(%esi),%eax
5f134b:	74 05                	je     0x5f1352
5f134d:	8b 40 fc             	mov    -0x4(%eax),%eax
5f1350:	eb 3f                	jmp    0x5f1391
5f1352:	8b 78 fc             	mov    -0x4(%eax),%edi
5f1355:	33 db                	xor    %ebx,%ebx
5f1357:	eb 3d                	jmp    0x5f1396
5f1359:	8b 46 20             	mov    0x20(%esi),%eax
5f135c:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f1360:	c1 e8 04             	shr    $0x4,%eax
5f1363:	a8 01                	test   $0x1,%al
5f1365:	8b 46 14             	mov    0x14(%esi),%eax
5f1368:	74 06                	je     0x5f1370
5f136a:	0f bf 40 fc          	movswl -0x4(%eax),%eax
5f136e:	eb 21                	jmp    0x5f1391
5f1370:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
5f1374:	eb 1b                	jmp    0x5f1391
5f1376:	8b 46 20             	mov    0x20(%esi),%eax
5f1379:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f137d:	c1 e8 04             	shr    $0x4,%eax
5f1380:	a8 01                	test   $0x1,%al
5f1382:	8b 46 14             	mov    0x14(%esi),%eax
5f1385:	74 06                	je     0x5f138d
5f1387:	0f be 40 fc          	movsbl -0x4(%eax),%eax
5f138b:	eb 04                	jmp    0x5f1391
5f138d:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
5f1391:	99                   	cltd
5f1392:	8b f8                	mov    %eax,%edi
5f1394:	8b da                	mov    %edx,%ebx
5f1396:	8b 4e 20             	mov    0x20(%esi),%ecx
5f1399:	8b c1                	mov    %ecx,%eax
5f139b:	c1 e8 04             	shr    $0x4,%eax
5f139e:	a8 01                	test   $0x1,%al
5f13a0:	74 17                	je     0x5f13b9
5f13a2:	85 db                	test   %ebx,%ebx
5f13a4:	7f 13                	jg     0x5f13b9
5f13a6:	7c 04                	jl     0x5f13ac
5f13a8:	85 ff                	test   %edi,%edi
5f13aa:	73 0d                	jae    0x5f13b9
5f13ac:	f7 df                	neg    %edi
5f13ae:	83 d3 00             	adc    $0x0,%ebx
5f13b1:	f7 db                	neg    %ebx
5f13b3:	83 c9 40             	or     $0x40,%ecx
5f13b6:	89 4e 20             	mov    %ecx,0x20(%esi)
5f13b9:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
5f13bd:	7d 09                	jge    0x5f13c8
5f13bf:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
5f13c6:	eb 11                	jmp    0x5f13d9
5f13c8:	ff 76 28             	push   0x28(%esi)
5f13cb:	83 e1 f7             	and    $0xfffffff7,%ecx
5f13ce:	89 4e 20             	mov    %ecx,0x20(%esi)
5f13d1:	8d 4e 40             	lea    0x40(%esi),%ecx
5f13d4:	e8 8f dc ff ff       	call   0x5ef068
5f13d9:	8b c7                	mov    %edi,%eax
5f13db:	0b c3                	or     %ebx,%eax
5f13dd:	75 04                	jne    0x5f13e3
5f13df:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
5f13e3:	83 7d fc 08          	cmpl   $0x8,-0x4(%ebp)
5f13e7:	8b ce                	mov    %esi,%ecx
5f13e9:	ff 75 0c             	push   0xc(%ebp)
5f13ec:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
5f13f0:	ff 75 08             	push   0x8(%ebp)
5f13f3:	75 09                	jne    0x5f13fe
5f13f5:	53                   	push   %ebx
5f13f6:	57                   	push   %edi
5f13f7:	e8 0f df ff ff       	call   0x5ef30b
5f13fc:	eb 06                	jmp    0x5f1404
5f13fe:	57                   	push   %edi
5f13ff:	e8 f2 dd ff ff       	call   0x5ef1f6
5f1404:	8b 46 20             	mov    0x20(%esi),%eax
5f1407:	c1 e8 07             	shr    $0x7,%eax
5f140a:	a8 01                	test   $0x1,%al
5f140c:	74 1e                	je     0x5f142c
5f140e:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
5f1412:	6a 30                	push   $0x30
5f1414:	5a                   	pop    %edx
5f1415:	74 08                	je     0x5f141f
5f1417:	8b 46 34             	mov    0x34(%esi),%eax
5f141a:	66 39 10             	cmp    %dx,(%eax)
5f141d:	74 0d                	je     0x5f142c
5f141f:	83 46 34 fe          	addl   $0xfffffffe,0x34(%esi)
5f1423:	8b 4e 34             	mov    0x34(%esi),%ecx
5f1426:	66 89 11             	mov    %dx,(%ecx)
5f1429:	ff 46 38             	incl   0x38(%esi)
5f142c:	b0 01                	mov    $0x1,%al
5f142e:	5f                   	pop    %edi
5f142f:	5e                   	pop    %esi
5f1430:	5b                   	pop    %ebx
5f1431:	c9                   	leave
5f1432:	c2 08 00             	ret    $0x8
5f1435:	8b ff                	mov    %edi,%edi
5f1437:	56                   	push   %esi
5f1438:	8b f1                	mov    %ecx,%esi
5f143a:	57                   	push   %edi
5f143b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f143f:	8b 46 14             	mov    0x14(%esi),%eax
5f1442:	8b 78 fc             	mov    -0x4(%eax),%edi
5f1445:	e8 53 56 01 00       	call   0x606a9d