74a3e0:	e8 c7 11 cf ff       	call   0x43b5ac
74a3e5:	8b 47 84             	mov    -0x7c(%edi),%eax
74a3e8:	8d 4f 8c             	lea    -0x74(%edi),%ecx
74a3eb:	bb 01 00 00 00       	mov    $0x1,%ebx
74a3f0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
74a3f7:	53                   	push   %ebx
74a3f8:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a3fb:	8b 40 08             	mov    0x8(%eax),%eax
74a3fe:	03 c8                	add    %eax,%ecx
74a400:	8d 45 00             	lea    0x0(%ebp),%eax
74a403:	50                   	push   %eax
74a404:	e8 04 99 cd ff       	call   0x423d0d
74a409:	85 c0                	test   %eax,%eax
74a40b:	0f 88 16 01 00 00    	js     0x74a527
74a411:	8b 47 84             	mov    -0x7c(%edi),%eax
74a414:	8d 4f 8c             	lea    -0x74(%edi),%ecx
74a417:	6a 00                	push   $0x0
74a419:	8b 40 08             	mov    0x8(%eax),%eax
74a41c:	03 c8                	add    %eax,%ecx
74a41e:	e8 ad 78 cb ff       	call   0x401cd0
74a423:	84 c0                	test   %al,%al
74a425:	0f 84 fc 00 00 00    	je     0x74a527
74a42b:	6a 00                	push   $0x0
74a42d:	6a 02                	push   $0x2
74a42f:	8d 4d 14             	lea    0x14(%ebp),%ecx
74a432:	e8 75 11 cf ff       	call   0x43b5ac
74a437:	8b 47 84             	mov    -0x7c(%edi),%eax
74a43a:	8d 4f a0             	lea    -0x60(%edi),%ecx
74a43d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
74a440:	bb 03 00 00 00       	mov    $0x3,%ebx
74a445:	6a 01                	push   $0x1
74a447:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a44a:	8b 40 08             	mov    0x8(%eax),%eax
74a44d:	03 c8                	add    %eax,%ecx
74a44f:	8d 45 14             	lea    0x14(%ebp),%eax
74a452:	50                   	push   %eax
74a453:	e8 b5 98 cd ff       	call   0x423d0d
74a458:	85 c0                	test   %eax,%eax
74a45a:	0f 88 c7 00 00 00    	js     0x74a527
74a460:	6a 00                	push   $0x0
74a462:	6a 02                	push   $0x2
74a464:	8d 4d 28             	lea    0x28(%ebp),%ecx
74a467:	e8 40 11 cf ff       	call   0x43b5ac
74a46c:	6a 01                	push   $0x1
74a46e:	8d 45 28             	lea    0x28(%ebp),%eax
74a471:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
74a478:	bb 07 00 00 00       	mov    $0x7,%ebx
74a47d:	8d 4f 88             	lea    -0x78(%edi),%ecx
74a480:	50                   	push   %eax
74a481:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a484:	e8 84 98 cd ff       	call   0x423d0d
74a489:	85 c0                	test   %eax,%eax
74a48b:	0f 88 96 00 00 00    	js     0x74a527
74a491:	6a 00                	push   $0x0
74a493:	6a 03                	push   $0x3
74a495:	8d 4d 3c             	lea    0x3c(%ebp),%ecx
74a498:	e8 0f 11 cf ff       	call   0x43b5ac
74a49d:	6a 01                	push   $0x1
74a49f:	8d 45 3c             	lea    0x3c(%ebp),%eax
74a4a2:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
74a4a9:	8d 77 9c             	lea    -0x64(%edi),%esi
74a4ac:	bb 0f 00 00 00       	mov    $0xf,%ebx
74a4b1:	50                   	push   %eax
74a4b2:	8b ce                	mov    %esi,%ecx
74a4b4:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a4b7:	e8 51 98 cd ff       	call   0x423d0d
74a4bc:	85 c0                	test   %eax,%eax
74a4be:	78 67                	js     0x74a527
74a4c0:	6a 00                	push   $0x0
74a4c2:	6a 03                	push   $0x3
74a4c4:	8d 4d 50             	lea    0x50(%ebp),%ecx
74a4c7:	e8 e0 10 cf ff       	call   0x43b5ac
74a4cc:	6a 01                	push   $0x1
74a4ce:	8d 4d 50             	lea    0x50(%ebp),%ecx
74a4d1:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
74a4d8:	51                   	push   %ecx
74a4d9:	bb 1f 00 00 00       	mov    $0x1f,%ebx
74a4de:	8d 4f b0             	lea    -0x50(%edi),%ecx
74a4e1:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a4e4:	e8 24 98 cd ff       	call   0x423d0d
74a4e9:	85 c0                	test   %eax,%eax
74a4eb:	78 3a                	js     0x74a527
74a4ed:	8d 47 b0             	lea    -0x50(%edi),%eax
74a4f0:	50                   	push   %eax
74a4f1:	8d 45 b8             	lea    -0x48(%ebp),%eax
74a4f4:	56                   	push   %esi
74a4f5:	50                   	push   %eax
74a4f6:	e8 db 7b cb ff       	call   0x4020d6
74a4fb:	8b 4f 84             	mov    -0x7c(%edi),%ecx
74a4fe:	bb 3f 00 00 00       	mov    $0x3f,%ebx
74a503:	c7 45 fc 05 00 00 00 	movl   $0x5,-0x4(%ebp)
74a50a:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a50d:	8b 49 08             	mov    0x8(%ecx),%ecx
74a510:	83 c1 8c             	add    $0xffffff8c,%ecx
74a513:	03 cf                	add    %edi,%ecx
74a515:	51                   	push   %ecx
74a516:	50                   	push   %eax
74a517:	e8 88 11 cc ff       	call   0x40b6a4
74a51c:	83 c4 14             	add    $0x14,%esp
74a51f:	c6 45 6b 00          	movb   $0x0,0x6b(%ebp)
74a523:	84 c0                	test   %al,%al
74a525:	74 04                	je     0x74a52b
74a527:	c6 45 6b 01          	movb   $0x1,0x6b(%ebp)
74a52b:	f6 c3 20             	test   $0x20,%bl
74a52e:	74 1f                	je     0x74a54f
74a530:	83 e3 df             	and    $0xffffffdf,%ebx
74a533:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a536:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
74a539:	8b 45 c0             	mov    -0x40(%ebp),%eax
74a53c:	c1 e0 02             	shl    $0x2,%eax
74a53f:	50                   	push   %eax
74a540:	8b 11                	mov    (%ecx),%edx
74a542:	ff 75 b8             	push   -0x48(%ebp)
74a545:	c7 45 fc 06 00 00 00 	movl   $0x6,-0x4(%ebp)
74a54c:	ff 52 04             	call   *0x4(%edx)
74a54f:	f6 c3 10             	test   $0x10,%bl
74a552:	74 1f                	je     0x74a573
74a554:	83 e3 ef             	and    $0xffffffef,%ebx
74a557:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a55a:	8b 4d 5c             	mov    0x5c(%ebp),%ecx
74a55d:	8b 45 58             	mov    0x58(%ebp),%eax
74a560:	c1 e0 02             	shl    $0x2,%eax
74a563:	50                   	push   %eax
74a564:	8b 11                	mov    (%ecx),%edx
74a566:	ff 75 50             	push   0x50(%ebp)
74a569:	c7 45 fc 07 00 00 00 	movl   $0x7,-0x4(%ebp)
74a570:	ff 52 04             	call   *0x4(%edx)
74a573:	f6 c3 08             	test   $0x8,%bl
74a576:	74 1f                	je     0x74a597
74a578:	83 e3 f7             	and    $0xfffffff7,%ebx
74a57b:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a57e:	8b 4d 48             	mov    0x48(%ebp),%ecx
74a581:	8b 45 44             	mov    0x44(%ebp),%eax
74a584:	c1 e0 02             	shl    $0x2,%eax
74a587:	50                   	push   %eax
74a588:	8b 11                	mov    (%ecx),%edx
74a58a:	ff 75 3c             	push   0x3c(%ebp)
74a58d:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
74a594:	ff 52 04             	call   *0x4(%edx)
74a597:	f6 c3 04             	test   $0x4,%bl
74a59a:	74 1f                	je     0x74a5bb
74a59c:	83 e3 fb             	and    $0xfffffffb,%ebx
74a59f:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a5a2:	8b 4d 34             	mov    0x34(%ebp),%ecx
74a5a5:	8b 45 30             	mov    0x30(%ebp),%eax
74a5a8:	c1 e0 02             	shl    $0x2,%eax
74a5ab:	50                   	push   %eax
74a5ac:	8b 11                	mov    (%ecx),%edx
74a5ae:	ff 75 28             	push   0x28(%ebp)
74a5b1:	c7 45 fc 09 00 00 00 	movl   $0x9,-0x4(%ebp)
74a5b8:	ff 52 04             	call   *0x4(%edx)
74a5bb:	f6 c3 02             	test   $0x2,%bl
74a5be:	74 1f                	je     0x74a5df
74a5c0:	83 e3 fd             	and    $0xfffffffd,%ebx
74a5c3:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a5c6:	8b 4d 20             	mov    0x20(%ebp),%ecx
74a5c9:	8b 45 1c             	mov    0x1c(%ebp),%eax
74a5cc:	c1 e0 02             	shl    $0x2,%eax
74a5cf:	50                   	push   %eax
74a5d0:	8b 11                	mov    (%ecx),%edx
74a5d2:	ff 75 14             	push   0x14(%ebp)
74a5d5:	c7 45 fc 0a 00 00 00 	movl   $0xa,-0x4(%ebp)
74a5dc:	ff 52 04             	call   *0x4(%edx)
74a5df:	83 e3 fe             	and    $0xfffffffe,%ebx
74a5e2:	8b 4d 0c             	mov    0xc(%ebp),%ecx
74a5e5:	8b 45 08             	mov    0x8(%ebp),%eax
74a5e8:	c1 e0 02             	shl    $0x2,%eax
74a5eb:	50                   	push   %eax
74a5ec:	8b 11                	mov    (%ecx),%edx
74a5ee:	ff 75 00             	push   0x0(%ebp)
74a5f1:	c7 45 fc 0b 00 00 00 	movl   $0xb,-0x4(%ebp)
74a5f8:	ff 52 04             	call   *0x4(%edx)
74a5fb:	80 7d 6b 00          	cmpb   $0x0,0x6b(%ebp)
74a5ff:	8b f3                	mov    %ebx,%esi
74a601:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
74a608:	89 5d 64             	mov    %ebx,0x64(%ebp)
74a60b:	0f 85 7a 02 00 00    	jne    0x74a88b
74a611:	80 7d 7c 00          	cmpb   $0x0,0x7c(%ebp)
74a615:	75 07                	jne    0x74a61e
74a617:	b0 01                	mov    $0x1,%al
74a619:	e9 6f 02 00 00       	jmp    0x74a88d
74a61e:	6a 00                	push   $0x0
74a620:	6a 01                	push   $0x1
74a622:	8d 4d cc             	lea    -0x34(%ebp),%ecx
74a625:	e8 82 0f cf ff       	call   0x43b5ac
74a62a:	83 cb 40             	or     $0x40,%ebx
74a62d:	c7 45 fc 0c 00 00 00 	movl   $0xc,-0x4(%ebp)
74a634:	8d 45 cc             	lea    -0x34(%ebp),%eax
74a637:	89 5d 6c             	mov    %ebx,0x6c(%ebp)
74a63a:	50                   	push   %eax
74a63b:	8d 5f 9c             	lea    -0x64(%edi),%ebx
74a63e:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
74a644:	53                   	push   %ebx
74a645:	50                   	push   %eax
74a646:	e8 58 a0 ce ff       	call   0x4346a3
74a64b:	8b 4d 64             	mov    0x64(%ebp),%ecx
74a64e:	81 c9 c0 00 00 00    	or     $0xc0,%ecx
74a654:	c7 45 fc 0d 00 00 00 	movl   $0xd,-0x4(%ebp)
74a65b:	50                   	push   %eax
74a65c:	89 4d 6c             	mov    %ecx,0x6c(%ebp)
74a65f:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
74a665:	8d 4f 88             	lea    -0x78(%edi),%ecx
74a668:	51                   	push   %ecx
74a669:	50                   	push   %eax
74a66a:	e8 be 5d cd ff       	call   0x42042d
74a66f:	83 c4 18             	add    $0x18,%esp
74a672:	6a 01                	push   $0x1
74a674:	81 ce c0 01 00 00    	or     $0x1c0,%esi
74a67a:	c7 45 fc 0e 00 00 00 	movl   $0xe,-0x4(%ebp)
74a681:	50                   	push   %eax
74a682:	8d 4f c4             	lea    -0x3c(%edi),%ecx
74a685:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a688:	e8 80 96 cd ff       	call   0x423d0d
74a68d:	85 c0                	test   %eax,%eax
74a68f:	0f 85 a6 00 00 00    	jne    0x74a73b
74a695:	50                   	push   %eax
74a696:	6a 01                	push   $0x1
74a698:	8d 4d e0             	lea    -0x20(%ebp),%ecx
74a69b:	e8 0c 0f cf ff       	call   0x43b5ac
74a6a0:	8b c6                	mov    %esi,%eax
74a6a2:	c7 45 fc 0f 00 00 00 	movl   $0xf,-0x4(%ebp)
74a6a9:	0d 00 02 00 00       	or     $0x200,%eax
74a6ae:	8d 4d e0             	lea    -0x20(%ebp),%ecx
74a6b1:	89 45 6c             	mov    %eax,0x6c(%ebp)
74a6b4:	8d 47 b0             	lea    -0x50(%edi),%eax
74a6b7:	51                   	push   %ecx
74a6b8:	50                   	push   %eax
74a6b9:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
74a6bf:	50                   	push   %eax
74a6c0:	e8 de 9f ce ff       	call   0x4346a3
74a6c5:	50                   	push   %eax
74a6c6:	8d 47 88             	lea    -0x78(%edi),%eax
74a6c9:	c7 45 fc 10 00 00 00 	movl   $0x10,-0x4(%ebp)
74a6d0:	50                   	push   %eax
74a6d1:	8b ce                	mov    %esi,%ecx
74a6d3:	8d 45 90             	lea    -0x70(%ebp),%eax
74a6d6:	81 c9 00 06 00 00    	or     $0x600,%ecx
74a6dc:	50                   	push   %eax
74a6dd:	89 4d 6c             	mov    %ecx,0x6c(%ebp)
74a6e0:	e8 48 5d cd ff       	call   0x42042d
74a6e5:	83 c4 18             	add    $0x18,%esp
74a6e8:	6a 01                	push   $0x1
74a6ea:	81 ce 00 0e 00 00    	or     $0xe00,%esi
74a6f0:	c7 45 fc 11 00 00 00 	movl   $0x11,-0x4(%ebp)
74a6f7:	50                   	push   %eax
74a6f8:	8d 4f d8             	lea    -0x28(%edi),%ecx
74a6fb:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a6fe:	e8 0a 96 cd ff       	call   0x423d0d
74a703:	85 c0                	test   %eax,%eax
74a705:	75 34                	jne    0x74a73b
74a707:	53                   	push   %ebx
74a708:	8d 47 b0             	lea    -0x50(%edi),%eax
74a70b:	50                   	push   %eax
74a70c:	8d 45 a4             	lea    -0x5c(%ebp),%eax
74a70f:	50                   	push   %eax
74a710:	e8 51 d4 cc ff       	call   0x417b66
74a715:	83 c4 0c             	add    $0xc,%esp
74a718:	6a 01                	push   $0x1
74a71a:	81 ce 00 10 00 00    	or     $0x1000,%esi
74a720:	c7 45 fc 12 00 00 00 	movl   $0x12,-0x4(%ebp)
74a727:	50                   	push   %eax
74a728:	8d 4f ec             	lea    -0x14(%edi),%ecx
74a72b:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a72e:	e8 da 95 cd ff       	call   0x423d0d
74a733:	85 c0                	test   %eax,%eax
74a735:	75 04                	jne    0x74a73b
74a737:	32 db                	xor    %bl,%bl
74a739:	eb 02                	jmp    0x74a73d
74a73b:	b3 01                	mov    $0x1,%bl
74a73d:	f7 c6 00 10 00 00    	test   $0x1000,%esi
74a743:	74 22                	je     0x74a767
74a745:	81 e6 ff ef ff ff    	and    $0xffffefff,%esi
74a74b:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a74e:	8b 4d b0             	mov    -0x50(%ebp),%ecx
74a751:	8b 45 ac             	mov    -0x54(%ebp),%eax
74a754:	c1 e0 02             	shl    $0x2,%eax
74a757:	50                   	push   %eax
74a758:	8b 11                	mov    (%ecx),%edx
74a75a:	ff 75 a4             	push   -0x5c(%ebp)
74a75d:	c7 45 fc 13 00 00 00 	movl   $0x13,-0x4(%ebp)
74a764:	ff 52 04             	call   *0x4(%edx)
74a767:	f7 c6 00 08 00 00    	test   $0x800,%esi
74a76d:	74 22                	je     0x74a791
74a76f:	81 e6 ff f7 ff ff    	and    $0xfffff7ff,%esi
74a775:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a778:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
74a77b:	8b 45 98             	mov    -0x68(%ebp),%eax
74a77e:	c1 e0 02             	shl    $0x2,%eax
74a781:	50                   	push   %eax
74a782:	8b 11                	mov    (%ecx),%edx
74a784:	ff 75 90             	push   -0x70(%ebp)
74a787:	c7 45 fc 14 00 00 00 	movl   $0x14,-0x4(%ebp)
74a78e:	ff 52 04             	call   *0x4(%edx)
74a791:	f7 c6 00 04 00 00    	test   $0x400,%esi
74a797:	74 25                	je     0x74a7be
74a799:	81 e6 ff fb ff ff    	and    $0xfffffbff,%esi
74a79f:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a7a2:	8b 4d 88             	mov    -0x78(%ebp),%ecx
74a7a5:	8b 45 84             	mov    -0x7c(%ebp),%eax
74a7a8:	c1 e0 02             	shl    $0x2,%eax
74a7ab:	50                   	push   %eax
74a7ac:	8b 11                	mov    (%ecx),%edx
74a7ae:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
74a7b4:	c7 45 fc 15 00 00 00 	movl   $0x15,-0x4(%ebp)
74a7bb:	ff 52 04             	call   *0x4(%edx)
74a7be:	f7 c6 00 02 00 00    	test   $0x200,%esi
74a7c4:	74 22                	je     0x74a7e8
74a7c6:	81 e6 ff fd ff ff    	and    $0xfffffdff,%esi
74a7cc:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a7cf:	8b 4d ec             	mov    -0x14(%ebp),%ecx
74a7d2:	8b 45 e8             	mov    -0x18(%ebp),%eax
74a7d5:	c1 e0 02             	shl    $0x2,%eax
74a7d8:	50                   	push   %eax
74a7d9:	8b 11                	mov    (%ecx),%edx
74a7db:	ff 75 e0             	push   -0x20(%ebp)
74a7de:	c7 45 fc 16 00 00 00 	movl   $0x16,-0x4(%ebp)
74a7e5:	ff 52 04             	call   *0x4(%edx)
74a7e8:	81 e6 ff fe ff ff    	and    $0xfffffeff,%esi
74a7ee:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a7f1:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
74a7f7:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
74a7fd:	c1 e0 02             	shl    $0x2,%eax
74a800:	50                   	push   %eax
74a801:	8b 11                	mov    (%ecx),%edx
74a803:	ff b5 68 ff ff ff    	push   -0x98(%ebp)
74a809:	c7 45 fc 17 00 00 00 	movl   $0x17,-0x4(%ebp)
74a810:	ff 52 04             	call   *0x4(%edx)
74a813:	81 e6 7f ff ff ff    	and    $0xffffff7f,%esi
74a819:	89 75 6c             	mov    %esi,0x6c(%ebp)
74a81c:	8b 8d 60 ff ff ff    	mov    -0xa0(%ebp),%ecx
74a822:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
74a828:	c1 e0 02             	shl    $0x2,%eax
74a82b:	50                   	push   %eax
74a82c:	8b 11                	mov    (%ecx),%edx
74a82e:	ff b5 54 ff ff ff    	push   -0xac(%ebp)
74a834:	c7 45 fc 18 00 00 00 	movl   $0x18,-0x4(%ebp)
74a83b:	ff 52 04             	call   *0x4(%edx)
74a83e:	8b 4d d8             	mov    -0x28(%ebp),%ecx
74a841:	8b 45 d4             	mov    -0x2c(%ebp),%eax
74a844:	c1 e0 02             	shl    $0x2,%eax
74a847:	50                   	push   %eax
74a848:	8b 11                	mov    (%ecx),%edx
74a84a:	ff 75 cc             	push   -0x34(%ebp)
74a84d:	c7 45 fc 19 00 00 00 	movl   $0x19,-0x4(%ebp)
74a854:	ff 52 04             	call   *0x4(%edx)
74a857:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
74a85e:	84 db                	test   %bl,%bl
74a860:	75 29                	jne    0x74a88b
74a862:	8b 75 78             	mov    0x78(%ebp),%esi
74a865:	8d 47 9c             	lea    -0x64(%edi),%eax