43c274:	8b cb                	mov    %ebx,%ecx
43c276:	ff 75 fc             	push   -0x4(%ebp)
43c279:	ff 75 f8             	push   -0x8(%ebp)
43c27c:	57                   	push   %edi
43c27d:	85 f6                	test   %esi,%esi
43c27f:	74 04                	je     0x43c285
43c281:	6a f7                	push   $0xfffffff7
43c283:	eb 02                	jmp    0x43c287
43c285:	6a f6                	push   $0xfffffff6
43c287:	e8 44 a1 04 00       	call   0x4863d0
43c28c:	e9 45 61 fc ff       	jmp    0x4023d6
43c291:	8b 82 98 00 00 00    	mov    0x98(%edx),%eax
43c297:	83 f8 ff             	cmp    $0xffffffff,%eax
43c29a:	0f 84 c9 61 fc ff    	je     0x402469
43c2a0:	8b ba 94 00 00 00    	mov    0x94(%edx),%edi
43c2a6:	83 ff ff             	cmp    $0xffffffff,%edi
43c2a9:	0f 84 ba 61 fc ff    	je     0x402469
43c2af:	8b 75 10             	mov    0x10(%ebp),%esi
43c2b2:	89 3e                	mov    %edi,(%esi)
43c2b4:	e9 7c 61 fc ff       	jmp    0x402435
43c2b9:	c7 05 c8 67 4c 00 02 	movl   $0x2,0x4c67c8
43c2c0:	00 00 00
43c2c3:	c7 05 cc 67 4c 00 01 	movl   $0x1,0x4c67cc
43c2ca:	00 00 00
43c2cd:	e9 8a 64 fc ff       	jmp    0x40275c
43c2d2:	8b 71 04             	mov    0x4(%ecx),%esi
43c2d5:	51                   	push   %ecx
43c2d6:	e8 1d a0 04 00       	call   0x4862f8
43c2db:	8b ce                	mov    %esi,%ecx
43c2dd:	85 f6                	test   %esi,%esi
43c2df:	75 f1                	jne    0x43c2d2
43c2e1:	e9 aa 64 fc ff       	jmp    0x402790
43c2e6:	8b 71 04             	mov    0x4(%ecx),%esi
43c2e9:	51                   	push   %ecx
43c2ea:	e8 c0 6f fc ff       	call   0x4032af
43c2ef:	8b ce                	mov    %esi,%ecx
43c2f1:	85 f6                	test   %esi,%esi
43c2f3:	75 f1                	jne    0x43c2e6
43c2f5:	e9 ab 64 fc ff       	jmp    0x4027a5
43c2fa:	8b 70 04             	mov    0x4(%eax),%esi
43c2fd:	50                   	push   %eax
43c2fe:	e8 69 4d fe ff       	call   0x42106c
43c303:	8b c6                	mov    %esi,%eax
43c305:	59                   	pop    %ecx
43c306:	85 f6                	test   %esi,%esi
43c308:	75 f0                	jne    0x43c2fa
43c30a:	5e                   	pop    %esi
43c30b:	c3                   	ret
43c30c:	33 f6                	xor    %esi,%esi
43c30e:	85 c9                	test   %ecx,%ecx
43c310:	0f 8e 15 65 fc ff    	jle    0x40282b
43c316:	8b 15 10 68 4c 00    	mov    0x4c6810,%edx
43c31c:	8b 04 b2             	mov    (%edx,%esi,4),%eax
43c31f:	83 38 00             	cmpl   $0x0,(%eax)
43c322:	0f 84 03 65 fc ff    	je     0x40282b
43c328:	46                   	inc    %esi
43c329:	3b f1                	cmp    %ecx,%esi
43c32b:	7c ef                	jl     0x43c31c
43c32d:	e9 f9 64 fc ff       	jmp    0x40282b
43c332:	8b 55 24             	mov    0x24(%ebp),%edx
43c335:	85 d2                	test   %edx,%edx
43c337:	75 30                	jne    0x43c369
43c339:	3b f1                	cmp    %ecx,%esi
43c33b:	eb 03                	jmp    0x43c340
43c33d:	3b 75 f8             	cmp    -0x8(%ebp),%esi
43c340:	75 0c                	jne    0x43c34e
43c342:	b9 0c 68 4c 00       	mov    $0x4c680c,%ecx
43c347:	e8 e6 71 fc ff       	call   0x403532
43c34c:	eb 14                	jmp    0x43c362
43c34e:	a1 10 68 4c 00       	mov    0x4c6810,%eax
43c353:	8b 04 b0             	mov    (%eax,%esi,4),%eax
43c356:	83 20 00             	andl   $0x0,(%eax)
43c359:	eb 07                	jmp    0x43c362
43c35b:	ff 37                	push   (%edi)
43c35d:	e8 ad ec 04 00       	call   0x48b00f
43c362:	33 c0                	xor    %eax,%eax
43c364:	e9 c4 66 fc ff       	jmp    0x402a2d
43c369:	6a 40                	push   $0x40
43c36b:	59                   	pop    %ecx
43c36c:	33 c1                	xor    %ecx,%eax
43c36e:	89 4f 0c             	mov    %ecx,0xc(%edi)
43c371:	52                   	push   %edx
43c372:	b9 b0 67 4c 00       	mov    $0x4c67b0,%ecx
43c377:	89 45 1c             	mov    %eax,0x1c(%ebp)
43c37a:	e8 93 62 fc ff       	call   0x402612
43c37f:	85 c0                	test   %eax,%eax
43c381:	78 12                	js     0x43c395
43c383:	8b 0d 10 68 4c 00    	mov    0x4c6810,%ecx
43c389:	8b 04 81             	mov    (%ecx,%eax,4),%eax
43c38c:	8b 00                	mov    (%eax),%eax
43c38e:	c7 40 0c 00 00 00 80 	movl   $0x80000000,0xc(%eax)
43c395:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c398:	50                   	push   %eax
43c399:	ff 75 24             	push   0x24(%ebp)
43c39c:	ff 15 94 f6 48 00    	call   *0x48f694
43c3a2:	8d 45 d8             	lea    -0x28(%ebp),%eax
43c3a5:	50                   	push   %eax
43c3a6:	ff 75 24             	push   0x24(%ebp)
43c3a9:	ff 15 34 f6 48 00    	call   *0x48f634
43c3af:	6a 07                	push   $0x7
43c3b1:	ff 15 58 f5 48 00    	call   *0x48f558
43c3b7:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43c3ba:	2b 4d e0             	sub    -0x20(%ebp),%ecx
43c3bd:	2b c8                	sub    %eax,%ecx
43c3bf:	01 4d 0c             	add    %ecx,0xc(%ebp)
43c3c2:	6a 08                	push   $0x8
43c3c4:	ff 15 58 f5 48 00    	call   *0x48f558
43c3ca:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43c3cd:	2b 4d e4             	sub    -0x1c(%ebp),%ecx
43c3d0:	8b 55 10             	mov    0x10(%ebp),%edx
43c3d3:	2b c8                	sub    %eax,%ecx
43c3d5:	03 d1                	add    %ecx,%edx
43c3d7:	8b c3                	mov    %ebx,%eax
43c3d9:	b9 00 00 c0 00       	mov    $0xc00000,%ecx
43c3de:	89 55 20             	mov    %edx,0x20(%ebp)
43c3e1:	23 c1                	and    %ecx,%eax
43c3e3:	3b c1                	cmp    %ecx,%eax
43c3e5:	75 0b                	jne    0x43c3f2
43c3e7:	6a 04                	push   $0x4
43c3e9:	ff 15 58 f5 48 00    	call   *0x48f558
43c3ef:	01 45 20             	add    %eax,0x20(%ebp)
43c3f2:	8b 45 0c             	mov    0xc(%ebp),%eax
43c3f5:	e9 9a 64 fc ff       	jmp    0x402894
43c3fa:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
43c3fe:	0f 84 57 ff ff ff    	je     0x43c35b
43c404:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
43c408:	0f 84 4d ff ff ff    	je     0x43c35b
43c40e:	6a 00                	push   $0x0
43c410:	6a 04                	push   $0x4
43c412:	e8 44 66 fc ff       	call   0x402a5b
43c417:	e9 0f 66 fc ff       	jmp    0x402a2b
43c41c:	ff 75 0c             	push   0xc(%ebp)
43c41f:	8b cf                	mov    %edi,%ecx
43c421:	e8 ec 61 fc ff       	call   0x402612
43c426:	8b c8                	mov    %eax,%ecx
43c428:	89 0d 1c 68 4c 00    	mov    %ecx,0x4c681c
43c42e:	e9 41 66 fc ff       	jmp    0x402a74
43c433:	38 96 98 01 00 00    	cmp    %dl,0x198(%esi)
43c439:	0f 84 60 66 fc ff    	je     0x402a9f
43c43f:	ff b6 94 01 00 00    	push   0x194(%esi)
43c445:	8b cf                	mov    %edi,%ecx
43c447:	56                   	push   %esi
43c448:	e8 0b f5 04 00       	call   0x48b958
43c44d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c450:	33 d2                	xor    %edx,%edx
43c452:	88 96 98 01 00 00    	mov    %dl,0x198(%esi)
43c458:	e9 42 66 fc ff       	jmp    0x402a9f
43c45d:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
43c461:	0f 84 bc 66 fc ff    	je     0x402b23
43c467:	6a 06                	push   $0x6
43c469:	51                   	push   %ecx
43c46a:	ff 15 1c f7 48 00    	call   *0x48f71c
43c470:	e9 76 66 fc ff       	jmp    0x402aeb
43c475:	8b c7                	mov    %edi,%eax
43c477:	83 e8 09             	sub    $0x9,%eax
43c47a:	74 4e                	je     0x43c4ca
43c47c:	83 e8 37             	sub    $0x37,%eax
43c47f:	74 3b                	je     0x43c4bc
43c481:	48                   	dec    %eax
43c482:	74 35                	je     0x43c4b9
43c484:	48                   	dec    %eax
43c485:	74 22                	je     0x43c4a9
43c487:	48                   	dec    %eax
43c488:	0f 85 5d 66 fc ff    	jne    0x402aeb
43c48e:	52                   	push   %edx
43c48f:	88 56 39             	mov    %dl,0x39(%esi)
43c492:	ff 15 e4 f6 48 00    	call   *0x48f6e4
43c498:	6a 01                	push   $0x1
43c49a:	6a 00                	push   $0x0
43c49c:	ff 36                	push   (%esi)
43c49e:	ff 15 58 f6 48 00    	call   *0x48f658
43c4a4:	e9 42 66 fc ff       	jmp    0x402aeb
43c4a9:	51                   	push   %ecx
43c4aa:	c6 46 39 01          	movb   $0x1,0x39(%esi)
43c4ae:	ff 15 e4 f6 48 00    	call   *0x48f6e4
43c4b4:	e9 32 66 fc ff       	jmp    0x402aeb
43c4b9:	52                   	push   %edx
43c4ba:	eb 02                	jmp    0x43c4be
43c4bc:	6a 01                	push   $0x1
43c4be:	51                   	push   %ecx
43c4bf:	ff 15 54 f6 48 00    	call   *0x48f654
43c4c5:	e9 21 66 fc ff       	jmp    0x402aeb
43c4ca:	80 7e 38 00          	cmpb   $0x0,0x38(%esi)
43c4ce:	0f 84 4f 66 fc ff    	je     0x402b23
43c4d4:	57                   	push   %edi
43c4d5:	51                   	push   %ecx
43c4d6:	ff 15 1c f7 48 00    	call   *0x48f71c
43c4dc:	ff 75 0c             	push   0xc(%ebp)
43c4df:	e8 51 85 fc ff       	call   0x404a35
43c4e4:	e9 02 66 fc ff       	jmp    0x402aeb
43c4e9:	ff 75 10             	push   0x10(%ebp)
43c4ec:	b9 b0 67 4c 00       	mov    $0x4c67b0,%ecx
43c4f1:	e8 1c 61 fc ff       	call   0x402612
43c4f6:	8b c8                	mov    %eax,%ecx
43c4f8:	89 0d 1c 68 4c 00    	mov    %ecx,0x4c681c
43c4fe:	e9 37 66 fc ff       	jmp    0x402b3a
43c503:	ff 75 18             	push   0x18(%ebp)
43c506:	b9 b0 67 4c 00       	mov    $0x4c67b0,%ecx
43c50b:	e8 02 61 fc ff       	call   0x402612
43c510:	8b c8                	mov    %eax,%ecx
43c512:	89 0d 1c 68 4c 00    	mov    %ecx,0x4c681c
43c518:	e9 6a 66 fc ff       	jmp    0x402b87
43c51d:	a1 10 68 4c 00       	mov    0x4c6810,%eax
43c522:	ff 75 08             	push   0x8(%ebp)
43c525:	8b 04 88             	mov    (%eax,%ecx,4),%eax
43c528:	8b 08                	mov    (%eax),%ecx
43c52a:	83 c1 28             	add    $0x28,%ecx
43c52d:	e8 fa b7 fc ff       	call   0x407d2c
43c532:	8b 0d 1c 68 4c 00    	mov    0x4c681c,%ecx
43c538:	e9 59 66 fc ff       	jmp    0x402b96
43c53d:	6a 10                	push   $0x10
43c53f:	6a 10                	push   $0x10
43c541:	6a 10                	push   $0x10
43c543:	50                   	push   %eax
43c544:	57                   	push   %edi
43c545:	6a 00                	push   $0x0
43c547:	ff 15 44 f7 48 00    	call   *0x48f744
43c54d:	89 45 18             	mov    %eax,0x18(%ebp)
43c550:	85 c0                	test   %eax,%eax
43c552:	75 1d                	jne    0x43c571
43c554:	8b 4d 14             	mov    0x14(%ebp),%ecx
43c557:	e8 8c 86 02 00       	call   0x464be8
43c55c:	6a 01                	push   $0x1
43c55e:	8d 4d 18             	lea    0x18(%ebp),%ecx
43c561:	89 45 14             	mov    %eax,0x14(%ebp)
43c564:	51                   	push   %ecx
43c565:	6a 00                	push   $0x0
43c567:	50                   	push   %eax
43c568:	57                   	push   %edi
43c569:	ff 15 b8 f4 48 00    	call   *0x48f4b8
43c56f:	eb 06                	jmp    0x43c577
43c571:	8b 45 14             	mov    0x14(%ebp),%eax
43c574:	89 45 14             	mov    %eax,0x14(%ebp)
43c577:	6a 50                	push   $0x50
43c579:	33 c0                	xor    %eax,%eax
43c57b:	50                   	push   %eax
43c57c:	50                   	push   %eax
43c57d:	6a 01                	push   $0x1
43c57f:	57                   	push   %edi
43c580:	50                   	push   %eax
43c581:	ff 15 44 f7 48 00    	call   *0x48f744
43c587:	89 45 fc             	mov    %eax,-0x4(%ebp)
43c58a:	85 c0                	test   %eax,%eax
43c58c:	75 1a                	jne    0x43c5a8
43c58e:	8b 4d 14             	mov    0x14(%ebp),%ecx
43c591:	6a 01                	push   $0x1
43c593:	50                   	push   %eax
43c594:	8d 45 fc             	lea    -0x4(%ebp),%eax
43c597:	50                   	push   %eax
43c598:	e8 4b 86 02 00       	call   0x464be8
43c59d:	50                   	push   %eax
43c59e:	57                   	push   %edi
43c59f:	ff 15 b8 f4 48 00    	call   *0x48f4b8
43c5a5:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c5a8:	8b 4d 18             	mov    0x18(%ebp),%ecx
43c5ab:	8b 3d 3c f7 48 00    	mov    0x48f73c,%edi
43c5b1:	85 c9                	test   %ecx,%ecx
43c5b3:	74 28                	je     0x43c5dd
43c5b5:	51                   	push   %ecx
43c5b6:	6a 00                	push   $0x0
43c5b8:	68 80 00 00 00       	push   $0x80
43c5bd:	ff 75 f8             	push   -0x8(%ebp)
43c5c0:	ff 15 88 f6 48 00    	call   *0x48f688
43c5c6:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
43c5ca:	74 05                	je     0x43c5d1
43c5cc:	ff 76 20             	push   0x20(%esi)
43c5cf:	ff d7                	call   *%edi
43c5d1:	8b 45 18             	mov    0x18(%ebp),%eax
43c5d4:	89 46 20             	mov    %eax,0x20(%esi)
43c5d7:	8b 4d 18             	mov    0x18(%ebp),%ecx
43c5da:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c5dd:	85 c0                	test   %eax,%eax
43c5df:	74 28                	je     0x43c609
43c5e1:	50                   	push   %eax
43c5e2:	6a 01                	push   $0x1
43c5e4:	68 80 00 00 00       	push   $0x80
43c5e9:	ff 75 f8             	push   -0x8(%ebp)
43c5ec:	ff 15 88 f6 48 00    	call   *0x48f688
43c5f2:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
43c5f6:	74 05                	je     0x43c5fd
43c5f8:	ff 76 24             	push   0x24(%esi)
43c5fb:	ff d7                	call   *%edi
43c5fd:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c600:	89 46 24             	mov    %eax,0x24(%esi)
43c603:	8b 4d 18             	mov    0x18(%ebp),%ecx
43c606:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c609:	8b 7d 08             	mov    0x8(%ebp),%edi
43c60c:	85 c9                	test   %ecx,%ecx
43c60e:	0f 85 a6 65 fc ff    	jne    0x402bba
43c614:	f7 d8                	neg    %eax
43c616:	1b c0                	sbb    %eax,%eax
43c618:	23 f8                	and    %eax,%edi
43c61a:	e9 9b 65 fc ff       	jmp    0x402bba
43c61f:	6a 01                	push   $0x1
43c621:	6a 00                	push   $0x0
43c623:	ff 75 f8             	push   -0x8(%ebp)
43c626:	ff 15 58 f6 48 00    	call   *0x48f658
43c62c:	e9 c5 65 fc ff       	jmp    0x402bf6
43c631:	0f 84 29 04 00 00    	je     0x43ca60
43c637:	83 f8 0c             	cmp    $0xc,%eax
43c63a:	0f 8f cf 02 00 00    	jg     0x43c90f
43c640:	0f 84 51 02 00 00    	je     0x43c897
43c646:	83 f8 02             	cmp    $0x2,%eax
43c649:	0f 8c 51 66 fc ff    	jl     0x402ca0
43c64f:	6a 03                	push   $0x3
43c651:	5e                   	pop    %esi
43c652:	3b c6                	cmp    %esi,%eax
43c654:	0f 8e 1a 02 00 00    	jle    0x43c874
43c65a:	83 f8 0a             	cmp    $0xa,%eax
43c65d:	0f 84 97 01 00 00    	je     0x43c7fa
43c663:	83 f8 0b             	cmp    $0xb,%eax
43c666:	0f 85 34 66 fc ff    	jne    0x402ca0
43c66c:	8b 81 90 01 00 00    	mov    0x190(%ecx),%eax
43c672:	6a 00                	push   $0x0
43c674:	89 44 24 1c          	mov    %eax,0x1c(%esp)
43c678:	0f b6 87 93 00 00 00 	movzbl 0x93(%edi),%eax
43c67f:	50                   	push   %eax
43c680:	68 08 13 00 00       	push   $0x1308
43c685:	ff b1 88 01 00 00    	push   0x188(%ecx)
43c68b:	ff 15 88 f6 48 00    	call   *0x48f688
43c691:	8b 44 24 0c          	mov    0xc(%esp),%eax
43c695:	8b cb                	mov    %ebx,%ecx
43c697:	ff b0 88 01 00 00    	push   0x188(%eax)
43c69d:	e8 39 5f fc ff       	call   0x4025db
43c6a2:	8b c8                	mov    %eax,%ecx
43c6a4:	8b 43 74             	mov    0x74(%ebx),%eax
43c6a7:	8b 04 88             	mov    (%eax,%ecx,4),%eax
43c6aa:	8b 00                	mov    (%eax),%eax
43c6ac:	8b 48 40             	mov    0x40(%eax),%ecx
43c6af:	85 c9                	test   %ecx,%ecx
43c6b1:	74 17                	je     0x43c6ca
43c6b3:	0f b7 87 88 00 00 00 	movzwl 0x88(%edi),%eax
43c6ba:	66 3b 44 24 10       	cmp    0x10(%esp),%ax
43c6bf:	74 09                	je     0x43c6ca
43c6c1:	98                   	cwtl
43c6c2:	50                   	push   %eax
43c6c3:	51                   	push   %ecx
43c6c4:	ff 15 90 f0 48 00    	call   *0x48f090
43c6ca:	39 b3 84 00 00 00    	cmp    %esi,0x84(%ebx)
43c6d0:	0f 8c cf 00 00 00    	jl     0x43c7a5
43c6d6:	8b 43 74             	mov    0x74(%ebx),%eax
43c6d9:	8b 04 b0             	mov    (%eax,%esi,4),%eax
43c6dc:	8b 08                	mov    (%eax),%ecx
43c6de:	85 c9                	test   %ecx,%ecx
43c6e0:	0f 84 b2 00 00 00    	je     0x43c798
43c6e6:	8a 81 93 00 00 00    	mov    0x93(%ecx),%al
43c6ec:	3c ff                	cmp    $0xff,%al
43c6ee:	0f 84 a4 00 00 00    	je     0x43c798
43c6f4:	8a 97 93 00 00 00    	mov    0x93(%edi),%dl
43c6fa:	3a c2                	cmp    %dl,%al