44c270:	0f 82 8b 00 00 00    	jb     0x44c301
44c276:	8d 0c 06             	lea    (%esi,%eax,1),%ecx
44c279:	3b c8                	cmp    %eax,%ecx
44c27b:	0f 82 80 00 00 00    	jb     0x44c301
44c281:	33 c0                	xor    %eax,%eax
44c283:	42                   	inc    %edx
44c284:	40                   	inc    %eax
44c285:	3b d0                	cmp    %eax,%edx
44c287:	72 e0                	jb     0x44c269
44c289:	8b 01                	mov    (%ecx),%eax
44c28b:	89 85 b0 f1 ff ff    	mov    %eax,-0xe50(%ebp)
44c291:	8d 41 04             	lea    0x4(%ecx),%eax
44c294:	3b c1                	cmp    %ecx,%eax
44c296:	72 69                	jb     0x44c301
44c298:	83 bd 70 f1 ff ff 02 	cmpl   $0x2,-0xe90(%ebp)
44c29f:	76 a9                	jbe    0x44c24a
44c2a1:	8b 8d 78 f1 ff ff    	mov    -0xe88(%ebp),%ecx
44c2a7:	33 c0                	xor    %eax,%eax
44c2a9:	8b d0                	mov    %eax,%edx
44c2ab:	8b 31                	mov    (%ecx),%esi
44c2ad:	8d 41 04             	lea    0x4(%ecx),%eax
44c2b0:	3b c1                	cmp    %ecx,%eax
44c2b2:	72 4d                	jb     0x44c301
44c2b4:	8d 0c 06             	lea    (%esi,%eax,1),%ecx
44c2b7:	3b c8                	cmp    %eax,%ecx
44c2b9:	72 46                	jb     0x44c301
44c2bb:	42                   	inc    %edx
44c2bc:	83 fa 02             	cmp    $0x2,%edx
44c2bf:	72 ea                	jb     0x44c2ab
44c2c1:	8b 11                	mov    (%ecx),%edx
44c2c3:	8d 41 04             	lea    0x4(%ecx),%eax
44c2c6:	3b c1                	cmp    %ecx,%eax
44c2c8:	72 37                	jb     0x44c301
44c2ca:	8b 85 b0 f1 ff ff    	mov    -0xe50(%ebp),%eax
44c2d0:	83 c0 30             	add    $0x30,%eax
44c2d3:	83 f8 30             	cmp    $0x30,%eax
44c2d6:	72 29                	jb     0x44c301
44c2d8:	8d 48 04             	lea    0x4(%eax),%ecx
44c2db:	3b c8                	cmp    %eax,%ecx
44c2dd:	72 22                	jb     0x44c301
44c2df:	8d 04 11             	lea    (%ecx,%edx,1),%eax
44c2e2:	3b c1                	cmp    %ecx,%eax
44c2e4:	72 1b                	jb     0x44c301
44c2e6:	89 85 1c f2 ff ff    	mov    %eax,-0xde4(%ebp)
44c2ec:	33 c9                	xor    %ecx,%ecx
44c2ee:	8b f1                	mov    %ecx,%esi
44c2f0:	3d 00 00 40 00       	cmp    $0x400000,%eax
44c2f5:	76 12                	jbe    0x44c309
44c2f7:	be ff ff 00 80       	mov    $0x8000ffff,%esi
44c2fc:	e9 e3 0c 00 00       	jmp    0x44cfe4
44c301:	8b f7                	mov    %edi,%esi
44c303:	8b 85 1c f2 ff ff    	mov    -0xde4(%ebp),%eax
44c309:	85 f6                	test   %esi,%esi
44c30b:	0f 88 d3 0c 00 00    	js     0x44cfe4
44c311:	50                   	push   %eax
44c312:	6a 08                	push   $0x8
44c314:	ff 15 74 72 4a 00    	call   *0x4a7274
44c31a:	50                   	push   %eax
44c31b:	ff 15 84 72 4a 00    	call   *0x4a7284
44c321:	85 c0                	test   %eax,%eax
44c323:	75 0d                	jne    0x44c332
44c325:	8b 85 e4 f1 ff ff    	mov    -0xe1c(%ebp),%eax
44c32b:	be 17 00 00 d0       	mov    $0xd0000017,%esi
44c330:	eb 0b                	jmp    0x44c33d
44c332:	89 85 e4 f1 ff ff    	mov    %eax,-0xe1c(%ebp)
44c338:	be 00 00 00 10       	mov    $0x10000000,%esi
44c33d:	85 f6                	test   %esi,%esi
44c33f:	0f 88 9f 0c 00 00    	js     0x44cfe4
44c345:	8b 8d 98 f1 ff ff    	mov    -0xe68(%ebp),%ecx
44c34b:	85 c9                	test   %ecx,%ecx
44c34d:	75 0a                	jne    0x44c359
44c34f:	be 57 00 07 80       	mov    $0x80070057,%esi
44c354:	e9 8b 0c 00 00       	jmp    0x44cfe4
44c359:	85 c0                	test   %eax,%eax
44c35b:	74 f2                	je     0x44c34f
44c35d:	89 85 8c f0 ff ff    	mov    %eax,-0xf74(%ebp)
44c363:	8b 85 1c f2 ff ff    	mov    -0xde4(%ebp),%eax
44c369:	89 85 94 f0 ff ff    	mov    %eax,-0xf6c(%ebp)
44c36f:	33 c0                	xor    %eax,%eax
44c371:	89 85 98 f0 ff ff    	mov    %eax,-0xf68(%ebp)
44c377:	8d 85 0c f1 ff ff    	lea    -0xef4(%ebp),%eax
44c37d:	50                   	push   %eax
44c37e:	33 c0                	xor    %eax,%eax
44c380:	89 8d 88 f0 ff ff    	mov    %ecx,-0xf78(%ebp)
44c386:	8b 8d 04 f2 ff ff    	mov    -0xdfc(%ebp),%ecx
44c38c:	40                   	inc    %eax
44c38d:	68 b0 f3 40 00       	push   $0x40f3b0
44c392:	50                   	push   %eax
44c393:	89 8d 90 f0 ff ff    	mov    %ecx,-0xf70(%ebp)
44c399:	ff 15 a4 72 4a 00    	call   *0x4a72a4
44c39f:	85 c0                	test   %eax,%eax
44c3a1:	75 26                	jne    0x44c3c9
44c3a3:	ff 15 b8 72 4a 00    	call   *0x4a72b8
44c3a9:	8b f0                	mov    %eax,%esi
44c3ab:	85 f6                	test   %esi,%esi
44c3ad:	7e 0b                	jle    0x44c3ba
44c3af:	0f b7 f6             	movzwl %si,%esi
44c3b2:	81 ce 00 00 07 80    	or     $0x80070000,%esi
44c3b8:	85 f6                	test   %esi,%esi
44c3ba:	8b 8d 1c f2 ff ff    	mov    -0xde4(%ebp),%ecx
44c3c0:	78 4f                	js     0x44c411
44c3c2:	be 05 40 00 80       	mov    $0x80004005,%esi
44c3c7:	eb 48                	jmp    0x44c411
44c3c9:	68 a0 32 41 00       	push   $0x4132a0
44c3ce:	ff b5 0c f1 ff ff    	push   -0xef4(%ebp)
44c3d4:	ff 15 80 72 4a 00    	call   *0x4a7280
44c3da:	8b f0                	mov    %eax,%esi
44c3dc:	85 f6                	test   %esi,%esi
44c3de:	74 c3                	je     0x44c3a3
44c3e0:	33 c0                	xor    %eax,%eax
44c3e2:	8b ce                	mov    %esi,%ecx
44c3e4:	50                   	push   %eax
44c3e5:	6a 14                	push   $0x14
44c3e7:	8d 85 88 f0 ff ff    	lea    -0xf78(%ebp),%eax
44c3ed:	50                   	push   %eax
44c3ee:	68 86 00 00 00       	push   $0x86
44c3f3:	ff 15 2c 81 4a 00    	call   *0x4a812c
44c3f9:	ff d6                	call   *%esi
44c3fb:	8b 8d 94 f0 ff ff    	mov    -0xf6c(%ebp),%ecx
44c401:	8b f0                	mov    %eax,%esi
44c403:	81 ce 00 00 00 10    	or     $0x10000000,%esi
44c409:	7d 06                	jge    0x44c411
44c40b:	8b 8d 1c f2 ff ff    	mov    -0xde4(%ebp),%ecx
44c411:	81 fe 23 00 00 d0    	cmp    $0xd0000023,%esi
44c417:	75 0a                	jne    0x44c423
44c419:	be 7a 00 07 80       	mov    $0x8007007a,%esi
44c41e:	e9 c1 0b 00 00       	jmp    0x44cfe4
44c423:	85 f6                	test   %esi,%esi
44c425:	0f 88 b9 0b 00 00    	js     0x44cfe4
44c42b:	33 d2                	xor    %edx,%edx
44c42d:	89 95 f0 f1 ff ff    	mov    %edx,-0xe10(%ebp)
44c433:	83 f9 04             	cmp    $0x4,%ecx
44c436:	73 0a                	jae    0x44c442
44c438:	be 3e 00 00 c0       	mov    $0xc000003e,%esi
44c43d:	e9 65 03 00 00       	jmp    0x44c7a7
44c442:	8b 85 e4 f1 ff ff    	mov    -0xe1c(%ebp),%eax
44c448:	8b 30                	mov    (%eax),%esi
44c44a:	8d 50 04             	lea    0x4(%eax),%edx
44c44d:	89 b5 c0 f1 ff ff    	mov    %esi,-0xe40(%ebp)
44c453:	3b d0                	cmp    %eax,%edx
44c455:	0f 82 48 03 00 00    	jb     0x44c7a3
44c45b:	8d 41 fc             	lea    -0x4(%ecx),%eax
44c45e:	3b c6                	cmp    %esi,%eax
44c460:	73 0a                	jae    0x44c46c
44c462:	be 3e 00 00 c0       	mov    $0xc000003e,%esi
44c467:	e9 39 03 00 00       	jmp    0x44c7a5
44c46c:	8d 04 32             	lea    (%edx,%esi,1),%eax
44c46f:	89 85 7c f1 ff ff    	mov    %eax,-0xe84(%ebp)
44c475:	3b c2                	cmp    %edx,%eax
44c477:	0f 82 26 03 00 00    	jb     0x44c7a3
44c47d:	8d 56 04             	lea    0x4(%esi),%edx
44c480:	83 fa 04             	cmp    $0x4,%edx
44c483:	0f 82 1a 03 00 00    	jb     0x44c7a3
44c489:	8b c1                	mov    %ecx,%eax
44c48b:	2b c2                	sub    %edx,%eax
44c48d:	83 f8 04             	cmp    $0x4,%eax
44c490:	72 d0                	jb     0x44c462
44c492:	8b 85 7c f1 ff ff    	mov    -0xe84(%ebp),%eax
44c498:	8b 10                	mov    (%eax),%edx
44c49a:	83 c0 04             	add    $0x4,%eax
44c49d:	89 95 b8 f1 ff ff    	mov    %edx,-0xe48(%ebp)
44c4a3:	3b 85 7c f1 ff ff    	cmp    -0xe84(%ebp),%eax
44c4a9:	0f 82 f4 02 00 00    	jb     0x44c7a3
44c4af:	8d 46 04             	lea    0x4(%esi),%eax
44c4b2:	8d 50 04             	lea    0x4(%eax),%edx
44c4b5:	89 95 a0 f1 ff ff    	mov    %edx,-0xe60(%ebp)
44c4bb:	3b d0                	cmp    %eax,%edx
44c4bd:	8b 95 b8 f1 ff ff    	mov    -0xe48(%ebp),%edx
44c4c3:	0f 82 da 02 00 00    	jb     0x44c7a3
44c4c9:	8b c1                	mov    %ecx,%eax
44c4cb:	2b 85 a0 f1 ff ff    	sub    -0xe60(%ebp),%eax
44c4d1:	3b c2                	cmp    %edx,%eax
44c4d3:	72 8d                	jb     0x44c462
44c4d5:	8b 85 7c f1 ff ff    	mov    -0xe84(%ebp),%eax
44c4db:	83 c0 04             	add    $0x4,%eax
44c4de:	8d 34 02             	lea    (%edx,%eax,1),%esi
44c4e1:	89 b5 6c f1 ff ff    	mov    %esi,-0xe94(%ebp)
44c4e7:	3b f0                	cmp    %eax,%esi
44c4e9:	0f 82 b4 02 00 00    	jb     0x44c7a3
44c4ef:	8b 85 a0 f1 ff ff    	mov    -0xe60(%ebp),%eax
44c4f5:	8d 34 02             	lea    (%edx,%eax,1),%esi
44c4f8:	89 b5 00 f2 ff ff    	mov    %esi,-0xe00(%ebp)
44c4fe:	3b f0                	cmp    %eax,%esi
44c500:	0f 82 9d 02 00 00    	jb     0x44c7a3
44c506:	8b c1                	mov    %ecx,%eax
44c508:	2b c6                	sub    %esi,%eax
44c50a:	83 f8 04             	cmp    $0x4,%eax
44c50d:	0f 82 4f ff ff ff    	jb     0x44c462
44c513:	8b 85 6c f1 ff ff    	mov    -0xe94(%ebp),%eax
44c519:	8b 00                	mov    (%eax),%eax
44c51b:	89 85 90 f1 ff ff    	mov    %eax,-0xe70(%ebp)
44c521:	8b 85 6c f1 ff ff    	mov    -0xe94(%ebp),%eax
44c527:	8d 50 04             	lea    0x4(%eax),%edx
44c52a:	89 95 6c f1 ff ff    	mov    %edx,-0xe94(%ebp)
44c530:	3b d0                	cmp    %eax,%edx
44c532:	0f 82 6b 02 00 00    	jb     0x44c7a3
44c538:	8b c6                	mov    %esi,%eax
44c53a:	83 c0 04             	add    $0x4,%eax
44c53d:	3b c6                	cmp    %esi,%eax
44c53f:	0f 82 5e 02 00 00    	jb     0x44c7a3
44c545:	8b d6                	mov    %esi,%edx
44c547:	8b c1                	mov    %ecx,%eax
44c549:	83 c2 04             	add    $0x4,%edx
44c54c:	2b c2                	sub    %edx,%eax
44c54e:	8b 95 b8 f1 ff ff    	mov    -0xe48(%ebp),%edx
44c554:	3b 85 90 f1 ff ff    	cmp    -0xe70(%ebp),%eax
44c55a:	0f 82 02 ff ff ff    	jb     0x44c462
44c560:	8b 85 90 f1 ff ff    	mov    -0xe70(%ebp),%eax
44c566:	83 c0 04             	add    $0x4,%eax
44c569:	03 c6                	add    %esi,%eax
44c56b:	89 85 a0 f1 ff ff    	mov    %eax,-0xe60(%ebp)
44c571:	8d 46 04             	lea    0x4(%esi),%eax
44c574:	8b b5 c0 f1 ff ff    	mov    -0xe40(%ebp),%esi
44c57a:	39 85 a0 f1 ff ff    	cmp    %eax,-0xe60(%ebp)
44c580:	0f 82 1d 02 00 00    	jb     0x44c7a3
44c586:	8b c1                	mov    %ecx,%eax
44c588:	2b 85 a0 f1 ff ff    	sub    -0xe60(%ebp),%eax
44c58e:	0f 85 ce fe ff ff    	jne    0x44c462
44c594:	8b 85 90 f1 ff ff    	mov    -0xe70(%ebp),%eax
44c59a:	83 c0 0c             	add    $0xc,%eax
44c59d:	03 c2                	add    %edx,%eax
44c59f:	03 c6                	add    %esi,%eax
44c5a1:	3b c1                	cmp    %ecx,%eax
44c5a3:	0f 85 b9 fe ff ff    	jne    0x44c462
44c5a9:	6a 18                	push   $0x18
44c5ab:	6a 08                	push   $0x8
44c5ad:	ff 15 74 72 4a 00    	call   *0x4a7274
44c5b3:	50                   	push   %eax
44c5b4:	ff 15 84 72 4a 00    	call   *0x4a7284
44c5ba:	8b f8                	mov    %eax,%edi
44c5bc:	85 ff                	test   %edi,%edi
44c5be:	75 0a                	jne    0x44c5ca
44c5c0:	be 17 00 00 c0       	mov    $0xc0000017,%esi
44c5c5:	e9 54 01 00 00       	jmp    0x44c71e
44c5ca:	8b 85 e4 f1 ff ff    	mov    -0xe1c(%ebp),%eax
44c5d0:	83 c0 04             	add    $0x4,%eax
44c5d3:	74 3f                	je     0x44c614
44c5d5:	56                   	push   %esi
44c5d6:	6a 08                	push   $0x8
44c5d8:	89 37                	mov    %esi,(%edi)
44c5da:	ff 15 74 72 4a 00    	call   *0x4a7274
44c5e0:	50                   	push   %eax
44c5e1:	ff 15 84 72 4a 00    	call   *0x4a7284
44c5e7:	8b c8                	mov    %eax,%ecx
44c5e9:	85 c9                	test   %ecx,%ecx
44c5eb:	75 0c                	jne    0x44c5f9
44c5ed:	be 17 00 00 c0       	mov    $0xc0000017,%esi
44c5f2:	33 d2                	xor    %edx,%edx
44c5f4:	e9 be 00 00 00       	jmp    0x44c6b7
44c5f9:	89 4f 04             	mov    %ecx,0x4(%edi)
44c5fc:	8b 85 e4 f1 ff ff    	mov    -0xe1c(%ebp),%eax
44c602:	56                   	push   %esi
44c603:	83 c0 04             	add    $0x4,%eax
44c606:	50                   	push   %eax
44c607:	51                   	push   %ecx
44c608:	e8 20 4a 04 00       	call   0x49102d
44c60d:	83 c4 0c             	add    $0xc,%esp
44c610:	33 d2                	xor    %edx,%edx
44c612:	eb 07                	jmp    0x44c61b
44c614:	33 d2                	xor    %edx,%edx
44c616:	89 17                	mov    %edx,(%edi)
44c618:	89 57 04             	mov    %edx,0x4(%edi)
44c61b:	8b 85 7c f1 ff ff    	mov    -0xe84(%ebp),%eax
44c621:	83 c0 04             	add    $0x4,%eax
44c624:	74 3a                	je     0x44c660
44c626:	8b b5 b8 f1 ff ff    	mov    -0xe48(%ebp),%esi
44c62c:	56                   	push   %esi
44c62d:	6a 08                	push   $0x8
44c62f:	89 77 08             	mov    %esi,0x8(%edi)
44c632:	ff 15 74 72 4a 00    	call   *0x4a7274
44c638:	50                   	push   %eax
44c639:	ff 15 84 72 4a 00    	call   *0x4a7284
44c63f:	8b d0                	mov    %eax,%edx
44c641:	85 d2                	test   %edx,%edx
44c643:	74 a8                	je     0x44c5ed
44c645:	89 57 0c             	mov    %edx,0xc(%edi)
44c648:	8b 85 7c f1 ff ff    	mov    -0xe84(%ebp),%eax
44c64e:	56                   	push   %esi
44c64f:	83 c0 04             	add    $0x4,%eax
44c652:	50                   	push   %eax
44c653:	52                   	push   %edx
44c654:	e8 d4 49 04 00       	call   0x49102d
44c659:	83 c4 0c             	add    $0xc,%esp
44c65c:	33 d2                	xor    %edx,%edx
44c65e:	eb 06                	jmp    0x44c666
44c660:	89 57 08             	mov    %edx,0x8(%edi)
44c663:	89 57 0c             	mov    %edx,0xc(%edi)
44c666:	83 bd 6c f1 ff ff 00 	cmpl   $0x0,-0xe94(%ebp)
44c66d:	74 38                	je     0x44c6a7
44c66f:	8b b5 90 f1 ff ff    	mov    -0xe70(%ebp),%esi
44c675:	56                   	push   %esi
44c676:	6a 08                	push   $0x8
44c678:	89 77 10             	mov    %esi,0x10(%edi)
44c67b:	ff 15 74 72 4a 00    	call   *0x4a7274
44c681:	50                   	push   %eax
44c682:	ff 15 84 72 4a 00    	call   *0x4a7284
44c688:	85 c0                	test   %eax,%eax
44c68a:	0f 84 5d ff ff ff    	je     0x44c5ed
44c690:	89 47 14             	mov    %eax,0x14(%edi)
44c693:	56                   	push   %esi
44c694:	ff b5 6c f1 ff ff    	push   -0xe94(%ebp)
44c69a:	50                   	push   %eax
44c69b:	e8 8d 49 04 00       	call   0x49102d
44c6a0:	83 c4 0c             	add    $0xc,%esp
44c6a3:	33 d2                	xor    %edx,%edx
44c6a5:	eb 06                	jmp    0x44c6ad
44c6a7:	89 57 10             	mov    %edx,0x10(%edi)
44c6aa:	89 57 14             	mov    %edx,0x14(%edi)
44c6ad:	89 bd f0 f1 ff ff    	mov    %edi,-0xe10(%ebp)
44c6b3:	8b f2                	mov    %edx,%esi
44c6b5:	8b fa                	mov    %edx,%edi
44c6b7:	85 ff                	test   %edi,%edi
44c6b9:	74 63                	je     0x44c71e
44c6bb:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
44c6bf:	74 16                	je     0x44c6d7
44c6c1:	ff 77 04             	push   0x4(%edi)
44c6c4:	52                   	push   %edx
44c6c5:	ff 15 74 72 4a 00    	call   *0x4a7274
44c6cb:	50                   	push   %eax
44c6cc:	ff 15 94 72 4a 00    	call   *0x4a7294
44c6d2:	33 d2                	xor    %edx,%edx
44c6d4:	89 57 04             	mov    %edx,0x4(%edi)
44c6d7:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
44c6db:	74 16                	je     0x44c6f3
44c6dd:	ff 77 0c             	push   0xc(%edi)
44c6e0:	52                   	push   %edx
44c6e1:	ff 15 74 72 4a 00    	call   *0x4a7274
44c6e7:	50                   	push   %eax
44c6e8:	ff 15 94 72 4a 00    	call   *0x4a7294
44c6ee:	33 d2                	xor    %edx,%edx
44c6f0:	89 57 0c             	mov    %edx,0xc(%edi)
44c6f3:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
44c6f7:	74 16                	je     0x44c70f
44c6f9:	ff 77 14             	push   0x14(%edi)
44c6fc:	52                   	push   %edx
44c6fd:	ff 15 74 72 4a 00    	call   *0x4a7274
44c703:	50                   	push   %eax
44c704:	ff 15 94 72 4a 00    	call   *0x4a7294
44c70a:	33 d2                	xor    %edx,%edx
44c70c:	89 57 14             	mov    %edx,0x14(%edi)
44c70f:	57                   	push   %edi
44c710:	52                   	push   %edx
44c711:	ff 15 74 72 4a 00    	call   *0x4a7274
44c717:	50                   	push   %eax
44c718:	ff 15 94 72 4a 00    	call   *0x4a7294
44c71e:	33 d2                	xor    %edx,%edx
44c720:	85 f6                	test   %esi,%esi
44c722:	78 10                	js     0x44c734
44c724:	8b 85 f0 f1 ff ff    	mov    -0xe10(%ebp),%eax
44c72a:	8b fa                	mov    %edx,%edi