4912ee:	6a 04                	push   $0x4
4912f0:	e8 bc 0b ff ff       	call   0x481eb1
4912f5:	59                   	pop    %ecx
4912f6:	c3                   	ret
4912f7:	8b c6                	mov    %esi,%eax
4912f9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4912fc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
491303:	59                   	pop    %ecx
491304:	5f                   	pop    %edi
491305:	5e                   	pop    %esi
491306:	5b                   	pop    %ebx
491307:	c9                   	leave
491308:	c3                   	ret
491309:	e8 8b 16 ff ff       	call   0x482999
49130e:	cc                   	int3
49130f:	8b ff                	mov    %edi,%edi
491311:	55                   	push   %ebp
491312:	8b ec                	mov    %esp,%ebp
491314:	56                   	push   %esi
491315:	8b 75 0c             	mov    0xc(%ebp),%esi
491318:	57                   	push   %edi
491319:	85 f6                	test   %esi,%esi
49131b:	74 3c                	je     0x491359
49131d:	8b 45 08             	mov    0x8(%ebp),%eax
491320:	85 c0                	test   %eax,%eax
491322:	74 35                	je     0x491359
491324:	8b 38                	mov    (%eax),%edi
491326:	3b fe                	cmp    %esi,%edi
491328:	75 04                	jne    0x49132e
49132a:	8b c6                	mov    %esi,%eax
49132c:	eb 2d                	jmp    0x49135b
49132e:	56                   	push   %esi
49132f:	89 30                	mov    %esi,(%eax)
491331:	e8 8f fc ff ff       	call   0x490fc5
491336:	59                   	pop    %ecx
491337:	85 ff                	test   %edi,%edi
491339:	74 ef                	je     0x49132a
49133b:	57                   	push   %edi
49133c:	e8 cc fe ff ff       	call   0x49120d
491341:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
491345:	59                   	pop    %ecx
491346:	75 e2                	jne    0x49132a
491348:	81 ff d0 41 4c 00    	cmp    $0x4c41d0,%edi
49134e:	74 da                	je     0x49132a
491350:	57                   	push   %edi
491351:	e8 ec fc ff ff       	call   0x491042
491356:	59                   	pop    %ecx
491357:	eb d1                	jmp    0x49132a
491359:	33 c0                	xor    %eax,%eax
49135b:	5f                   	pop    %edi
49135c:	5e                   	pop    %esi
49135d:	5d                   	pop    %ebp
49135e:	c3                   	ret
49135f:	8b ff                	mov    %edi,%edi
491361:	55                   	push   %ebp
491362:	8b ec                	mov    %esp,%ebp
491364:	81 ec b0 00 00 00    	sub    $0xb0,%esp
49136a:	a1 14 40 4c 00       	mov    0x4c4014,%eax
49136f:	33 c5                	xor    %ebp,%eax
491371:	89 45 fc             	mov    %eax,-0x4(%ebp)
491374:	56                   	push   %esi
491375:	8b 75 08             	mov    0x8(%ebp),%esi
491378:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
49137e:	6a 55                	push   $0x55
491380:	50                   	push   %eax
491381:	81 4e 08 04 01 00 00 	orl    $0x104,0x8(%esi)
491388:	e8 66 76 ff ff       	call   0x4889f3
49138d:	83 f8 01             	cmp    $0x1,%eax
491390:	7e 3c                	jle    0x4913ce
491392:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
491398:	57                   	push   %edi
491399:	8d 51 02             	lea    0x2(%ecx),%edx
49139c:	33 ff                	xor    %edi,%edi
49139e:	66 8b 01             	mov    (%ecx),%ax
4913a1:	83 c1 02             	add    $0x2,%ecx
4913a4:	66 3b c7             	cmp    %di,%ax
4913a7:	75 f5                	jne    0x49139e
4913a9:	2b ca                	sub    %edx,%ecx
4913ab:	d1 f9                	sar    $1,%ecx
4913ad:	8d 41 01             	lea    0x1(%ecx),%eax
4913b0:	50                   	push   %eax
4913b1:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
4913b7:	50                   	push   %eax
4913b8:	8d 86 50 02 00 00    	lea    0x250(%esi),%eax
4913be:	6a 55                	push   $0x55
4913c0:	50                   	push   %eax
4913c1:	e8 48 eb fe ff       	call   0x47ff0e
4913c6:	83 c4 10             	add    $0x10,%esp
4913c9:	85 c0                	test   %eax,%eax
4913cb:	75 0e                	jne    0x4913db
4913cd:	5f                   	pop    %edi
4913ce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4913d1:	33 cd                	xor    %ebp,%ecx
4913d3:	5e                   	pop    %esi
4913d4:	e8 f1 85 fd ff       	call   0x4699ca
4913d9:	c9                   	leave
4913da:	c3                   	ret
4913db:	57                   	push   %edi
4913dc:	57                   	push   %edi
4913dd:	57                   	push   %edi
4913de:	57                   	push   %edi
4913df:	57                   	push   %edi
4913e0:	e8 69 82 fe ff       	call   0x47964e
4913e5:	cc                   	int3
4913e6:	8b ff                	mov    %edi,%edi
4913e8:	55                   	push   %ebp
4913e9:	8b ec                	mov    %esp,%ebp
4913eb:	51                   	push   %ecx
4913ec:	53                   	push   %ebx
4913ed:	56                   	push   %esi
4913ee:	8b 75 08             	mov    0x8(%ebp),%esi
4913f1:	33 db                	xor    %ebx,%ebx
4913f3:	57                   	push   %edi
4913f4:	6a 02                	push   $0x2
4913f6:	5f                   	pop    %edi
4913f7:	8b 0e                	mov    (%esi),%ecx
4913f9:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4913fc:	8d 51 02             	lea    0x2(%ecx),%edx
4913ff:	66 8b 01             	mov    (%ecx),%ax
491402:	03 cf                	add    %edi,%ecx
491404:	66 3b c3             	cmp    %bx,%ax
491407:	75 f6                	jne    0x4913ff
491409:	2b ca                	sub    %edx,%ecx
49140b:	33 c0                	xor    %eax,%eax
49140d:	8b 56 04             	mov    0x4(%esi),%edx
491410:	d1 f9                	sar    $1,%ecx
491412:	83 f9 03             	cmp    $0x3,%ecx
491415:	0f 94 c0             	sete   %al
491418:	8d 5a 02             	lea    0x2(%edx),%ebx
49141b:	89 46 10             	mov    %eax,0x10(%esi)
49141e:	66 8b 02             	mov    (%edx),%ax
491421:	03 d7                	add    %edi,%edx
491423:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
491427:	75 f5                	jne    0x49141e
491429:	2b d3                	sub    %ebx,%edx
49142b:	33 c0                	xor    %eax,%eax
49142d:	d1 fa                	sar    $1,%edx
49142f:	83 fa 03             	cmp    $0x3,%edx
491432:	0f 94 c0             	sete   %al
491435:	89 46 14             	mov    %eax,0x14(%esi)
491438:	83 f9 03             	cmp    $0x3,%ecx
49143b:	74 0a                	je     0x491447
49143d:	ff 36                	push   (%esi)
49143f:	e8 94 00 00 00       	call   0x4914d8
491444:	59                   	pop    %ecx
491445:	8b f8                	mov    %eax,%edi
491447:	33 db                	xor    %ebx,%ebx
491449:	89 7e 0c             	mov    %edi,0xc(%esi)
49144c:	53                   	push   %ebx
49144d:	53                   	push   %ebx
49144e:	6a 03                	push   $0x3
491450:	68 10 15 49 00       	push   $0x491510
491455:	e8 2c 73 ff ff       	call   0x488786
49145a:	8b 4e 08             	mov    0x8(%esi),%ecx
49145d:	f6 c1 07             	test   $0x7,%cl
491460:	0f 95 c2             	setne  %dl
491463:	0f ba e1 09          	bt     $0x9,%ecx
491467:	0f 92 c0             	setb   %al
49146a:	22 d0                	and    %al,%dl
49146c:	0f ba e1 08          	bt     $0x8,%ecx
491470:	0f 92 c0             	setb   %al
491473:	84 d0                	test   %dl,%al
491475:	75 03                	jne    0x49147a
491477:	89 5e 08             	mov    %ebx,0x8(%esi)
49147a:	5f                   	pop    %edi
49147b:	5e                   	pop    %esi
49147c:	5b                   	pop    %ebx
49147d:	c9                   	leave
49147e:	c3                   	ret
49147f:	8b ff                	mov    %edi,%edi
491481:	55                   	push   %ebp
491482:	8b ec                	mov    %esp,%ebp
491484:	53                   	push   %ebx
491485:	56                   	push   %esi
491486:	8b 75 08             	mov    0x8(%ebp),%esi
491489:	33 db                	xor    %ebx,%ebx
49148b:	57                   	push   %edi
49148c:	6a 02                	push   $0x2
49148e:	5a                   	pop    %edx
49148f:	8b 0e                	mov    (%esi),%ecx
491491:	8d 79 02             	lea    0x2(%ecx),%edi
491494:	66 8b 01             	mov    (%ecx),%ax
491497:	03 ca                	add    %edx,%ecx
491499:	66 3b c3             	cmp    %bx,%ax
49149c:	75 f6                	jne    0x491494
49149e:	2b cf                	sub    %edi,%ecx
4914a0:	33 c0                	xor    %eax,%eax
4914a2:	d1 f9                	sar    $1,%ecx
4914a4:	83 f9 03             	cmp    $0x3,%ecx
4914a7:	0f 94 c0             	sete   %al
4914aa:	89 46 10             	mov    %eax,0x10(%esi)
4914ad:	74 0a                	je     0x4914b9
4914af:	ff 36                	push   (%esi)
4914b1:	e8 22 00 00 00       	call   0x4914d8
4914b6:	59                   	pop    %ecx
4914b7:	8b d0                	mov    %eax,%edx
4914b9:	53                   	push   %ebx
4914ba:	53                   	push   %ebx
4914bb:	6a 03                	push   $0x3
4914bd:	68 00 18 49 00       	push   $0x491800
4914c2:	89 56 0c             	mov    %edx,0xc(%esi)
4914c5:	e8 bc 72 ff ff       	call   0x488786
4914ca:	f6 46 08 04          	testb  $0x4,0x8(%esi)
4914ce:	75 03                	jne    0x4914d3
4914d0:	89 5e 08             	mov    %ebx,0x8(%esi)
4914d3:	5f                   	pop    %edi
4914d4:	5e                   	pop    %esi
4914d5:	5b                   	pop    %ebx
4914d6:	5d                   	pop    %ebp
4914d7:	c3                   	ret
4914d8:	8b ff                	mov    %edi,%edi
4914da:	55                   	push   %ebp
4914db:	8b ec                	mov    %esp,%ebp
4914dd:	8b 4d 08             	mov    0x8(%ebp),%ecx
4914e0:	33 d2                	xor    %edx,%edx
4914e2:	85 c9                	test   %ecx,%ecx
4914e4:	75 04                	jne    0x4914ea
4914e6:	33 c0                	xor    %eax,%eax
4914e8:	5d                   	pop    %ebp
4914e9:	c3                   	ret
4914ea:	0f b7 01             	movzwl (%ecx),%eax
4914ed:	83 c1 02             	add    $0x2,%ecx
4914f0:	66 83 f8 41          	cmp    $0x41,%ax
4914f4:	72 06                	jb     0x4914fc
4914f6:	66 83 f8 5a          	cmp    $0x5a,%ax
4914fa:	76 09                	jbe    0x491505
4914fc:	83 c0 9f             	add    $0xffffff9f,%eax
4914ff:	66 83 f8 19          	cmp    $0x19,%ax
491503:	77 03                	ja     0x491508
491505:	42                   	inc    %edx
491506:	eb e2                	jmp    0x4914ea
491508:	8b c2                	mov    %edx,%eax
49150a:	5d                   	pop    %ebp
49150b:	c3                   	ret
49150c:	cc                   	int3
49150d:	cc                   	int3
49150e:	cc                   	int3
49150f:	cc                   	int3
491510:	8b ff                	mov    %edi,%edi
491512:	55                   	push   %ebp
491513:	8b ec                	mov    %esp,%ebp
491515:	81 ec 88 00 00 00    	sub    $0x88,%esp
49151b:	a1 14 40 4c 00       	mov    0x4c4014,%eax
491520:	33 c5                	xor    %ebp,%eax
491522:	89 45 fc             	mov    %eax,-0x4(%ebp)
491525:	56                   	push   %esi
491526:	57                   	push   %edi
491527:	8b 7d 08             	mov    0x8(%ebp),%edi
49152a:	e8 8a 55 ff ff       	call   0x486ab9
49152f:	8b f0                	mov    %eax,%esi
491531:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
491537:	6a 40                	push   $0x40
491539:	50                   	push   %eax
49153a:	8b 4e 64             	mov    0x64(%esi),%ecx
49153d:	f7 d9                	neg    %ecx
49153f:	1b c9                	sbb    %ecx,%ecx
491541:	81 e1 05 f0 ff ff    	and    $0xfffff005,%ecx
491547:	81 c1 02 10 00 00    	add    $0x1002,%ecx
49154d:	51                   	push   %ecx
49154e:	57                   	push   %edi
49154f:	e8 dc 73 ff ff       	call   0x488930
491554:	85 c0                	test   %eax,%eax
491556:	75 09                	jne    0x491561
491558:	21 46 58             	and    %eax,0x58(%esi)
49155b:	40                   	inc    %eax
49155c:	e9 47 02 00 00       	jmp    0x4917a8
491561:	53                   	push   %ebx
491562:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
491568:	50                   	push   %eax
491569:	ff 76 54             	push   0x54(%esi)
49156c:	e8 67 8d fe ff       	call   0x47a2d8
491571:	33 db                	xor    %ebx,%ebx
491573:	89 9d 78 ff ff ff    	mov    %ebx,-0x88(%ebp)
491579:	59                   	pop    %ecx
49157a:	59                   	pop    %ecx
49157b:	85 c0                	test   %eax,%eax
49157d:	0f 85 e0 00 00 00    	jne    0x491663
491583:	6a 40                	push   $0x40
491585:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
49158b:	50                   	push   %eax
49158c:	8b 46 60             	mov    0x60(%esi),%eax
49158f:	f7 d8                	neg    %eax
491591:	1b c0                	sbb    %eax,%eax
491593:	25 02 f0 ff ff       	and    $0xfffff002,%eax
491598:	05 01 10 00 00       	add    $0x1001,%eax
49159d:	50                   	push   %eax
49159e:	57                   	push   %edi
49159f:	e8 8c 73 ff ff       	call   0x488930
4915a4:	85 c0                	test   %eax,%eax
4915a6:	75 08                	jne    0x4915b0
4915a8:	21 5e 58             	and    %ebx,0x58(%esi)
4915ab:	e9 ef 00 00 00       	jmp    0x49169f
4915b0:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
4915b6:	50                   	push   %eax
4915b7:	ff 76 50             	push   0x50(%esi)
4915ba:	e8 19 8d fe ff       	call   0x47a2d8
4915bf:	59                   	pop    %ecx
4915c0:	59                   	pop    %ecx
4915c1:	8b 4e 58             	mov    0x58(%esi),%ecx
4915c4:	85 c0                	test   %eax,%eax
4915c6:	75 1b                	jne    0x4915e3
4915c8:	81 c9 04 03 00 00    	or     $0x304,%ecx
4915ce:	89 4e 58             	mov    %ecx,0x58(%esi)
4915d1:	8b cf                	mov    %edi,%ecx
4915d3:	8d 51 02             	lea    0x2(%ecx),%edx
4915d6:	66 8b 01             	mov    (%ecx),%ax
4915d9:	83 c1 02             	add    $0x2,%ecx
4915dc:	66 3b c3             	cmp    %bx,%ax
4915df:	75 f5                	jne    0x4915d6
4915e1:	eb 5e                	jmp    0x491641
4915e3:	f6 c1 02             	test   $0x2,%cl
4915e6:	75 7b                	jne    0x491663
4915e8:	39 5e 5c             	cmp    %ebx,0x5c(%esi)
4915eb:	74 2f                	je     0x49161c
4915ed:	ff 76 5c             	push   0x5c(%esi)
4915f0:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
4915f6:	50                   	push   %eax
4915f7:	ff 76 50             	push   0x50(%esi)
4915fa:	e8 29 8e fe ff       	call   0x47a428
4915ff:	83 c4 0c             	add    $0xc,%esp
491602:	85 c0                	test   %eax,%eax
491604:	75 16                	jne    0x49161c
491606:	83 4e 58 02          	orl    $0x2,0x58(%esi)
49160a:	8b cf                	mov    %edi,%ecx
49160c:	8d 51 02             	lea    0x2(%ecx),%edx
49160f:	66 8b 01             	mov    (%ecx),%ax
491612:	83 c1 02             	add    $0x2,%ecx
491615:	66 3b c3             	cmp    %bx,%ax
491618:	75 f5                	jne    0x49160f
49161a:	eb 25                	jmp    0x491641
49161c:	f6 46 58 01          	testb  $0x1,0x58(%esi)
491620:	75 41                	jne    0x491663
491622:	57                   	push   %edi
491623:	e8 87 03 00 00       	call   0x4919af
491628:	59                   	pop    %ecx
491629:	85 c0                	test   %eax,%eax
49162b:	74 36                	je     0x491663
49162d:	83 4e 58 01          	orl    $0x1,0x58(%esi)
491631:	8b cf                	mov    %edi,%ecx
491633:	8d 51 02             	lea    0x2(%ecx),%edx
491636:	66 8b 01             	mov    (%ecx),%ax
491639:	83 c1 02             	add    $0x2,%ecx
49163c:	66 3b c3             	cmp    %bx,%ax
49163f:	75 f5                	jne    0x491636
491641:	2b ca                	sub    %edx,%ecx
491643:	d1 f9                	sar    $1,%ecx
491645:	8d 41 01             	lea    0x1(%ecx),%eax
491648:	50                   	push   %eax
491649:	57                   	push   %edi
49164a:	8d 86 a0 02 00 00    	lea    0x2a0(%esi),%eax