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
5f144a:	85 c0                	test   %eax,%eax
5f144c:	75 14                	jne    0x5f1462
5f144e:	e8 a6 bb ff ff       	call   0x5ecff9
5f1453:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f1459:	e8 c1 ba ff ff       	call   0x5ecf1f
5f145e:	32 c0                	xor    %al,%al
5f1460:	eb 44                	jmp    0x5f14a6
5f1462:	ff 76 2c             	push   0x2c(%esi)
5f1465:	e8 43 f8 ff ff       	call   0x5f0cad
5f146a:	59                   	pop    %ecx
5f146b:	83 e8 01             	sub    $0x1,%eax
5f146e:	74 2b                	je     0x5f149b
5f1470:	83 e8 01             	sub    $0x1,%eax
5f1473:	74 1d                	je     0x5f1492
5f1475:	48                   	dec    %eax
5f1476:	83 e8 01             	sub    $0x1,%eax
5f1479:	74 10                	je     0x5f148b
5f147b:	83 e8 04             	sub    $0x4,%eax
5f147e:	75 ce                	jne    0x5f144e
5f1480:	8b 46 18             	mov    0x18(%esi),%eax
5f1483:	99                   	cltd
5f1484:	89 07                	mov    %eax,(%edi)
5f1486:	89 57 04             	mov    %edx,0x4(%edi)
5f1489:	eb 15                	jmp    0x5f14a0
5f148b:	8b 46 18             	mov    0x18(%esi),%eax
5f148e:	89 07                	mov    %eax,(%edi)
5f1490:	eb 0e                	jmp    0x5f14a0
5f1492:	66 8b 46 18          	mov    0x18(%esi),%ax
5f1496:	66 89 07             	mov    %ax,(%edi)
5f1499:	eb 05                	jmp    0x5f14a0
5f149b:	8a 46 18             	mov    0x18(%esi),%al
5f149e:	88 07                	mov    %al,(%edi)
5f14a0:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5f14a4:	b0 01                	mov    $0x1,%al
5f14a6:	5f                   	pop    %edi
5f14a7:	5e                   	pop    %esi
5f14a8:	c3                   	ret
5f14a9:	8b 51 20             	mov    0x20(%ecx),%edx
5f14ac:	8b c2                	mov    %edx,%eax
5f14ae:	c1 e8 05             	shr    $0x5,%eax
5f14b1:	a8 01                	test   $0x1,%al
5f14b3:	74 09                	je     0x5f14be
5f14b5:	81 ca 80 00 00 00    	or     $0x80,%edx
5f14bb:	89 51 20             	mov    %edx,0x20(%ecx)
5f14be:	6a 00                	push   $0x0
5f14c0:	6a 08                	push   $0x8
5f14c2:	e8 c8 fc ff ff       	call   0x5f118f
5f14c7:	c3                   	ret
5f14c8:	8b 51 20             	mov    0x20(%ecx),%edx
5f14cb:	8b c2                	mov    %edx,%eax
5f14cd:	c1 e8 05             	shr    $0x5,%eax
5f14d0:	a8 01                	test   $0x1,%al
5f14d2:	74 09                	je     0x5f14dd
5f14d4:	81 ca 80 00 00 00    	or     $0x80,%edx
5f14da:	89 51 20             	mov    %edx,0x20(%ecx)
5f14dd:	6a 00                	push   $0x0
5f14df:	6a 08                	push   $0x8
5f14e1:	e8 fa fd ff ff       	call   0x5f12e0
5f14e6:	c3                   	ret
5f14e7:	6a 01                	push   $0x1
5f14e9:	6a 10                	push   $0x10
5f14eb:	c7 41 28 08 00 00 00 	movl   $0x8,0x28(%ecx)
5f14f2:	c7 41 2c 0a 00 00 00 	movl   $0xa,0x2c(%ecx)
5f14f9:	e8 91 fc ff ff       	call   0x5f118f
5f14fe:	c3                   	ret
5f14ff:	6a 01                	push   $0x1
5f1501:	6a 10                	push   $0x10
5f1503:	c7 41 28 08 00 00 00 	movl   $0x8,0x28(%ecx)
5f150a:	c7 41 2c 0a 00 00 00 	movl   $0xa,0x2c(%ecx)
5f1511:	e8 ca fd ff ff       	call   0x5f12e0
5f1516:	c3                   	ret
5f1517:	8b ff                	mov    %edi,%edi
5f1519:	53                   	push   %ebx
5f151a:	56                   	push   %esi
5f151b:	8b f1                	mov    %ecx,%esi
5f151d:	57                   	push   %edi
5f151e:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f1522:	8b 46 14             	mov    0x14(%esi),%eax
5f1525:	8b 5e 28             	mov    0x28(%esi),%ebx
5f1528:	8b 78 fc             	mov    -0x4(%eax),%edi
5f152b:	89 7e 34             	mov    %edi,0x34(%esi)
5f152e:	83 fb ff             	cmp    $0xffffffff,%ebx
5f1531:	75 05                	jne    0x5f1538
5f1533:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
5f1538:	ff 76 2c             	push   0x2c(%esi)
5f153b:	0f b6 46 31          	movzbl 0x31(%esi),%eax
5f153f:	50                   	push   %eax
5f1540:	ff 76 04             	push   0x4(%esi)
5f1543:	ff 36                	push   (%esi)
5f1545:	e8 9c db ff ff       	call   0x5ef0e6
5f154a:	83 c4 10             	add    $0x10,%esp
5f154d:	84 c0                	test   %al,%al
5f154f:	74 19                	je     0x5f156a
5f1551:	85 ff                	test   %edi,%edi
5f1553:	75 08                	jne    0x5f155d
5f1555:	bf 94 28 6d 00       	mov    $0x6d2894,%edi
5f155a:	89 7e 34             	mov    %edi,0x34(%esi)
5f155d:	53                   	push   %ebx
5f155e:	57                   	push   %edi
5f155f:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
5f1563:	e8 d9 8a 00 00       	call   0x5fa041
5f1568:	eb 13                	jmp    0x5f157d
5f156a:	85 ff                	test   %edi,%edi
5f156c:	75 08                	jne    0x5f1576
5f156e:	bf a4 28 6d 00       	mov    $0x6d28a4,%edi
5f1573:	89 7e 34             	mov    %edi,0x34(%esi)
5f1576:	53                   	push   %ebx
5f1577:	57                   	push   %edi
5f1578:	e8 7a 88 00 00       	call   0x5f9df7
5f157d:	59                   	pop    %ecx
5f157e:	59                   	pop    %ecx
5f157f:	5f                   	pop    %edi
5f1580:	89 46 38             	mov    %eax,0x38(%esi)
5f1583:	b0 01                	mov    $0x1,%al
5f1585:	5e                   	pop    %esi
5f1586:	5b                   	pop    %ebx
5f1587:	c3                   	ret
5f1588:	8b ff                	mov    %edi,%edi
5f158a:	53                   	push   %ebx
5f158b:	56                   	push   %esi
5f158c:	8b f1                	mov    %ecx,%esi
5f158e:	57                   	push   %edi
5f158f:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f1593:	8b 46 14             	mov    0x14(%esi),%eax
5f1596:	8b 5e 28             	mov    0x28(%esi),%ebx
5f1599:	8b 78 fc             	mov    -0x4(%eax),%edi
5f159c:	89 7e 34             	mov    %edi,0x34(%esi)
5f159f:	83 fb ff             	cmp    $0xffffffff,%ebx
5f15a2:	75 05                	jne    0x5f15a9
5f15a4:	bb ff ff ff 7f       	mov    $0x7fffffff,%ebx
5f15a9:	ff 76 2c             	push   0x2c(%esi)
5f15ac:	0f b7 46 32          	movzwl 0x32(%esi),%eax
5f15b0:	50                   	push   %eax
5f15b1:	ff 76 04             	push   0x4(%esi)
5f15b4:	ff 36                	push   (%esi)
5f15b6:	e8 5c db ff ff       	call   0x5ef117
5f15bb:	83 c4 10             	add    $0x10,%esp
5f15be:	84 c0                	test   %al,%al
5f15c0:	74 1b                	je     0x5f15dd
5f15c2:	85 ff                	test   %edi,%edi
5f15c4:	75 08                	jne    0x5f15ce
5f15c6:	bf 94 28 6d 00       	mov    $0x6d2894,%edi
5f15cb:	89 7e 34             	mov    %edi,0x34(%esi)
5f15ce:	53                   	push   %ebx
5f15cf:	57                   	push   %edi
5f15d0:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
5f15d4:	e8 68 8a 00 00       	call   0x5fa041
5f15d9:	59                   	pop    %ecx
5f15da:	59                   	pop    %ecx
5f15db:	eb 15                	jmp    0x5f15f2
5f15dd:	85 ff                	test   %edi,%edi
5f15df:	75 07                	jne    0x5f15e8
5f15e1:	c7 46 34 a4 28 6d 00 	movl   $0x6d28a4,0x34(%esi)
5f15e8:	6a 00                	push   $0x0
5f15ea:	53                   	push   %ebx
5f15eb:	8b ce                	mov    %esi,%ecx
5f15ed:	e8 09 00 00 00       	call   0x5f15fb
5f15f2:	5f                   	pop    %edi
5f15f3:	89 46 38             	mov    %eax,0x38(%esi)
5f15f6:	b0 01                	mov    $0x1,%al
5f15f8:	5e                   	pop    %esi
5f15f9:	5b                   	pop    %ebx
5f15fa:	c3                   	ret
5f15fb:	8b ff                	mov    %edi,%edi
5f15fd:	55                   	push   %ebp
5f15fe:	8b ec                	mov    %esp,%ebp
5f1600:	53                   	push   %ebx
5f1601:	56                   	push   %esi
5f1602:	8b d9                	mov    %ecx,%ebx
5f1604:	57                   	push   %edi
5f1605:	33 ff                	xor    %edi,%edi
5f1607:	8b 73 34             	mov    0x34(%ebx),%esi
5f160a:	39 7d 08             	cmp    %edi,0x8(%ebp)
5f160d:	7e 2a                	jle    0x5f1639
5f160f:	8a 06                	mov    (%esi),%al