595462:	eb 1d                	jmp    0x595481
595464:	c7 46 14 03 00 00 00 	movl   $0x3,0x14(%esi)
59546b:	8b 44 24 14          	mov    0x14(%esp),%eax
59546f:	5b                   	pop    %ebx
595470:	5f                   	pop    %edi
595471:	5e                   	pop    %esi
595472:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
595478:	33 c0                	xor    %eax,%eax
59547a:	c3                   	ret
59547b:	8b 51 18             	mov    0x18(%ecx),%edx
59547e:	8b 79 1c             	mov    0x1c(%ecx),%edi
595481:	8b 46 7c             	mov    0x7c(%esi),%eax
595484:	05 84 01 00 00       	add    $0x184,%eax
595489:	50                   	push   %eax
59548a:	8b 41 14             	mov    0x14(%ecx),%eax
59548d:	57                   	push   %edi
59548e:	52                   	push   %edx
59548f:	56                   	push   %esi
595490:	ff d0                	call   *%eax
595492:	8b 4e 7c             	mov    0x7c(%esi),%ecx
595495:	83 c4 10             	add    $0x10,%esp
595498:	89 81 04 02 00 00    	mov    %eax,0x204(%ecx)
59549e:	8b 46 7c             	mov    0x7c(%esi),%eax
5954a1:	83 b8 04 02 00 00 00 	cmpl   $0x0,0x204(%eax)
5954a8:	74 c1                	je     0x59546b
5954aa:	8d 86 50 06 00 00    	lea    0x650(%esi),%eax
5954b0:	50                   	push   %eax
5954b1:	e8 ca be ff ff       	call   0x591380
5954b6:	83 c4 04             	add    $0x4,%esp
5954b9:	85 c0                	test   %eax,%eax
5954bb:	74 3d                	je     0x5954fa
5954bd:	8b 46 6c             	mov    0x6c(%esi),%eax
5954c0:	ff 76 74             	push   0x74(%esi)
5954c3:	ff 70 04             	push   0x4(%eax)
5954c6:	56                   	push   %esi
5954c7:	e8 a4 df 00 00       	call   0x5a3470
5954cc:	83 c4 0c             	add    $0xc,%esp
5954cf:	85 c0                	test   %eax,%eax
5954d1:	74 98                	je     0x59546b
5954d3:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
5954d9:	85 c9                	test   %ecx,%ecx
5954db:	0f 84 c9 00 00 00    	je     0x5955aa
5954e1:	ff b6 88 00 00 00    	push   0x88(%esi)
5954e7:	8b 46 6c             	mov    0x6c(%esi),%eax
5954ea:	56                   	push   %esi
5954eb:	ff 76 74             	push   0x74(%esi)
5954ee:	ff 70 04             	push   0x4(%eax)
5954f1:	6a 00                	push   $0x0
5954f3:	6a 02                	push   $0x2
5954f5:	e9 a9 00 00 00       	jmp    0x5955a3
5954fa:	8b 4e 04             	mov    0x4(%esi),%ecx
5954fd:	8b 41 64             	mov    0x64(%ecx),%eax
595500:	f6 40 30 08          	testb  $0x8,0x30(%eax)
595504:	75 23                	jne    0x595529
595506:	8b 01                	mov    (%ecx),%eax
595508:	3d 04 03 00 00       	cmp    $0x304,%eax
59550d:	7c 1a                	jl     0x595529
59550f:	3d 00 00 01 00       	cmp    $0x10000,%eax
595514:	74 13                	je     0x595529
595516:	8b 46 7c             	mov    0x7c(%esi),%eax
595519:	8b 80 0c 02 00 00    	mov    0x20c(%eax),%eax
59551f:	83 f8 04             	cmp    $0x4,%eax
595522:	74 5d                	je     0x595581
595524:	83 f8 18             	cmp    $0x18,%eax
595527:	74 58                	je     0x595581
595529:	8b 46 7c             	mov    0x7c(%esi),%eax
59552c:	83 b8 0c 02 00 00 02 	cmpl   $0x2,0x20c(%eax)
595533:	75 2e                	jne    0x595563
595535:	83 7e 74 26          	cmpl   $0x26,0x74(%esi)
595539:	72 28                	jb     0x595563
59553b:	8b 46 6c             	mov    0x6c(%esi),%eax
59553e:	ba c0 71 66 00       	mov    $0x6671c0,%edx
595543:	bf 1c 00 00 00       	mov    $0x1c,%edi
595548:	8b 48 04             	mov    0x4(%eax),%ecx
59554b:	83 c1 06             	add    $0x6,%ecx
59554e:	66 90                	xchg   %ax,%ax
595550:	8b 02                	mov    (%edx),%eax
595552:	3b 01                	cmp    (%ecx),%eax
595554:	75 0d                	jne    0x595563
595556:	83 c2 04             	add    $0x4,%edx
595559:	83 c1 04             	add    $0x4,%ecx
59555c:	83 ef 04             	sub    $0x4,%edi
59555f:	73 ef                	jae    0x595550
595561:	eb 1e                	jmp    0x595581
595563:	8b 46 74             	mov    0x74(%esi),%eax
595566:	83 c0 04             	add    $0x4,%eax
595569:	50                   	push   %eax
59556a:	8b 46 6c             	mov    0x6c(%esi),%eax
59556d:	ff 70 04             	push   0x4(%eax)
595570:	56                   	push   %esi
595571:	e8 fa de 00 00       	call   0x5a3470
595576:	83 c4 0c             	add    $0xc,%esp
595579:	85 c0                	test   %eax,%eax
59557b:	0f 84 ea fe ff ff    	je     0x59546b
595581:	8b 8e 84 00 00 00    	mov    0x84(%esi),%ecx
595587:	85 c9                	test   %ecx,%ecx
595589:	74 1f                	je     0x5955aa
59558b:	ff b6 88 00 00 00    	push   0x88(%esi)
595591:	8b 46 74             	mov    0x74(%esi),%eax
595594:	56                   	push   %esi
595595:	83 c0 04             	add    $0x4,%eax
595598:	50                   	push   %eax
595599:	8b 46 6c             	mov    0x6c(%esi),%eax
59559c:	ff 70 04             	push   0x4(%eax)
59559f:	6a 16                	push   $0x16
5955a1:	ff 36                	push   (%esi)
5955a3:	6a 00                	push   $0x0
5955a5:	ff d1                	call   *%ecx
5955a7:	83 c4 1c             	add    $0x1c,%esp
5955aa:	8b 44 24 14          	mov    0x14(%esp),%eax
5955ae:	8b 4e 74             	mov    0x74(%esi),%ecx
5955b1:	5b                   	pop    %ebx
5955b2:	5f                   	pop    %edi
5955b3:	89 08                	mov    %ecx,(%eax)
5955b5:	b8 01 00 00 00       	mov    $0x1,%eax
5955ba:	5e                   	pop    %esi
5955bb:	c3                   	ret
5955bc:	cc                   	int3
5955bd:	cc                   	int3
5955be:	cc                   	int3
5955bf:	cc                   	int3
5955c0:	b8 04 00 00 00       	mov    $0x4,%eax
5955c5:	e8 e6 c1 03 00       	call   0x5d17b0
5955ca:	56                   	push   %esi
5955cb:	8b 74 24 0c          	mov    0xc(%esp),%esi
5955cf:	57                   	push   %edi
5955d0:	8b 46 6c             	mov    0x6c(%esi),%eax
5955d3:	8b 78 04             	mov    0x4(%eax),%edi
5955d6:	8b 56 74             	mov    0x74(%esi),%edx
5955d9:	83 fa 04             	cmp    $0x4,%edx
5955dc:	73 51                	jae    0x59562f
5955de:	66 90                	xchg   %ax,%ax
5955e0:	8b 4e 04             	mov    0x4(%esi),%ecx
5955e3:	8d 44 24 10          	lea    0x10(%esp),%eax
5955e7:	50                   	push   %eax
5955e8:	6a 00                	push   $0x0
5955ea:	b8 04 00 00 00       	mov    $0x4,%eax
5955ef:	2b c2                	sub    %edx,%eax
5955f1:	50                   	push   %eax
5955f2:	8d 04 3a             	lea    (%edx,%edi,1),%eax
5955f5:	50                   	push   %eax
5955f6:	8d 44 24 18          	lea    0x18(%esp),%eax
5955fa:	50                   	push   %eax
5955fb:	8b 41 38             	mov    0x38(%ecx),%eax
5955fe:	6a 16                	push   $0x16
595600:	56                   	push   %esi
595601:	ff d0                	call   *%eax
595603:	83 c4 1c             	add    $0x1c,%esp
595606:	85 c0                	test   %eax,%eax
595608:	0f 8e 1d 01 00 00    	jle    0x59572b
59560e:	8b 44 24 08          	mov    0x8(%esp),%eax
595612:	83 f8 14             	cmp    $0x14,%eax
595615:	0f 84 8f 00 00 00    	je     0x5956aa
59561b:	83 f8 16             	cmp    $0x16,%eax
59561e:	75 79                	jne    0x595699
595620:	8b 56 74             	mov    0x74(%esi),%edx
595623:	03 54 24 10          	add    0x10(%esp),%edx
595627:	89 56 74             	mov    %edx,0x74(%esi)
59562a:	83 fa 04             	cmp    $0x4,%edx
59562d:	72 b1                	jb     0x5955e0
59562f:	83 7e 1c 00          	cmpl   $0x0,0x1c(%esi)
595633:	0f 85 ff 00 00 00    	jne    0x595738
595639:	83 7e 40 01          	cmpl   $0x1,0x40(%esi)
59563d:	0f 84 f5 00 00 00    	je     0x595738
595643:	80 3f 00             	cmpb   $0x0,(%edi)
595646:	0f 85 ec 00 00 00    	jne    0x595738
59564c:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
595650:	0f 85 e2 00 00 00    	jne    0x595738
595656:	80 7f 02 00          	cmpb   $0x0,0x2(%edi)
59565a:	0f 85 d8 00 00 00    	jne    0x595738
595660:	80 7f 03 00          	cmpb   $0x0,0x3(%edi)
595664:	0f 85 ce 00 00 00    	jne    0x595738
59566a:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
595670:	c7 46 74 00 00 00 00 	movl   $0x0,0x74(%esi)
595677:	85 c0                	test   %eax,%eax
595679:	0f 84 57 ff ff ff    	je     0x5955d6
59567f:	ff b6 88 00 00 00    	push   0x88(%esi)
595685:	56                   	push   %esi
595686:	6a 04                	push   $0x4
595688:	57                   	push   %edi
595689:	6a 16                	push   $0x16
59568b:	ff 36                	push   (%esi)
59568d:	6a 00                	push   $0x0
59568f:	ff d0                	call   *%eax
595691:	83 c4 1c             	add    $0x1c,%esp
595694:	e9 3d ff ff ff       	jmp    0x5955d6
595699:	68 ae 04 00 00       	push   $0x4ae
59569e:	68 e0 71 66 00       	push   $0x6671e0
5956a3:	68 85 00 00 00       	push   $0x85
5956a8:	eb 6b                	jmp    0x595715
5956aa:	83 7e 74 00          	cmpl   $0x0,0x74(%esi)
5956ae:	75 59                	jne    0x595709
5956b0:	83 7c 24 10 01       	cmpl   $0x1,0x10(%esp)
5956b5:	75 52                	jne    0x595709
5956b7:	80 3f 01             	cmpb   $0x1,(%edi)
5956ba:	75 4d                	jne    0x595709
5956bc:	83 7e 40 00          	cmpl   $0x0,0x40(%esi)
5956c0:	75 0b                	jne    0x5956cd
5956c2:	8b 46 7c             	mov    0x7c(%esi),%eax
5956c5:	f7 00 00 08 00 00    	testl  $0x800,(%eax)
5956cb:	75 65                	jne    0x595732
5956cd:	8b 44 24 14          	mov    0x14(%esp),%eax
5956d1:	5f                   	pop    %edi
5956d2:	c7 00 01 01 00 00    	movl   $0x101,(%eax)
5956d8:	8b 46 7c             	mov    0x7c(%esi),%eax
5956db:	c7 80 0c 02 00 00 01 	movl   $0x101,0x20c(%eax)
5956e2:	01 00 00
5956e5:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
5956e9:	8d 41 ff             	lea    -0x1(%ecx),%eax
5956ec:	89 46 74             	mov    %eax,0x74(%esi)
5956ef:	8b 46 6c             	mov    0x6c(%esi),%eax
5956f2:	8b 40 04             	mov    0x4(%eax),%eax
5956f5:	89 46 70             	mov    %eax,0x70(%esi)
5956f8:	8b 46 7c             	mov    0x7c(%esi),%eax
5956fb:	5e                   	pop    %esi
5956fc:	89 88 08 02 00 00    	mov    %ecx,0x208(%eax)
595702:	b8 01 00 00 00       	mov    $0x1,%eax
595707:	59                   	pop    %ecx
595708:	c3                   	ret
595709:	68 98 04 00 00       	push   $0x498
59570e:	68 e0 71 66 00       	push   $0x6671e0
595713:	6a 67                	push   $0x67
595715:	68 83 01 00 00       	push   $0x183
59571a:	6a 0a                	push   $0xa
59571c:	56                   	push   %esi
59571d:	e8 ee 99 ff ff       	call   0x58f110
595722:	83 c4 18             	add    $0x18,%esp
595725:	33 c0                	xor    %eax,%eax
595727:	5f                   	pop    %edi
595728:	5e                   	pop    %esi
595729:	59                   	pop    %ecx
59572a:	c3                   	ret
59572b:	c7 46 14 03 00 00 00 	movl   $0x3,0x14(%esi)
595732:	5f                   	pop    %edi
595733:	33 c0                	xor    %eax,%eax
595735:	5e                   	pop    %esi
595736:	59                   	pop    %ecx
595737:	c3                   	ret
595738:	8b 44 24 14          	mov    0x14(%esp),%eax
59573c:	0f b6 0f             	movzbl (%edi),%ecx
59573f:	53                   	push   %ebx
595740:	8d 9e 50 06 00 00    	lea    0x650(%esi),%ebx
595746:	89 08                	mov    %ecx,(%eax)
595748:	8b 46 7c             	mov    0x7c(%esi),%eax
59574b:	0f b6 0f             	movzbl (%edi),%ecx
59574e:	53                   	push   %ebx
59574f:	89 88 0c 02 00 00    	mov    %ecx,0x20c(%eax)
595755:	e8 26 bc ff ff       	call   0x591380
59575a:	83 c4 04             	add    $0x4,%esp
59575d:	85 c0                	test   %eax,%eax
59575f:	74 2e                	je     0x59578f
595761:	53                   	push   %ebx
595762:	e8 09 bc ff ff       	call   0x591370
595767:	8b 4e 7c             	mov    0x7c(%esi),%ecx
59576a:	83 c4 04             	add    $0x4,%esp
59576d:	83 c0 04             	add    $0x4,%eax
595770:	89 81 08 02 00 00    	mov    %eax,0x208(%ecx)
595776:	b9 04 00 00 00       	mov    $0x4,%ecx
59577b:	8b 46 6c             	mov    0x6c(%esi),%eax
59577e:	5b                   	pop    %ebx
59577f:	5f                   	pop    %edi
595780:	8b 40 04             	mov    0x4(%eax),%eax
595783:	89 46 70             	mov    %eax,0x70(%esi)
595786:	8d 41 fd             	lea    -0x3(%ecx),%eax
595789:	89 4e 74             	mov    %ecx,0x74(%esi)
59578c:	5e                   	pop    %esi
59578d:	59                   	pop    %ecx
59578e:	c3                   	ret
59578f:	0f b6 4f 01          	movzbl 0x1(%edi),%ecx
595793:	0f b6 47 02          	movzbl 0x2(%edi),%eax
595797:	c1 e1 08             	shl    $0x8,%ecx
59579a:	0b c8                	or     %eax,%ecx
59579c:	0f b6 47 03          	movzbl 0x3(%edi),%eax
5957a0:	c1 e1 08             	shl    $0x8,%ecx
5957a3:	0b c8                	or     %eax,%ecx
5957a5:	8b 46 7c             	mov    0x7c(%esi),%eax
5957a8:	5b                   	pop    %ebx
5957a9:	5f                   	pop    %edi
5957aa:	89 88 08 02 00 00    	mov    %ecx,0x208(%eax)
5957b0:	33 c9                	xor    %ecx,%ecx
5957b2:	8b 46 6c             	mov    0x6c(%esi),%eax
5957b5:	8b 40 04             	mov    0x4(%eax),%eax
5957b8:	83 c0 04             	add    $0x4,%eax
5957bb:	89 46 70             	mov    %eax,0x70(%esi)
5957be:	8d 41 01             	lea    0x1(%ecx),%eax
5957c1:	89 4e 74             	mov    %ecx,0x74(%esi)
5957c4:	5e                   	pop    %esi
5957c5:	59                   	pop    %ecx
5957c6:	c3                   	ret
5957c7:	cc                   	int3
5957c8:	cc                   	int3
5957c9:	cc                   	int3
5957ca:	cc                   	int3
5957cb:	cc                   	int3
5957cc:	cc                   	int3
5957cd:	cc                   	int3
5957ce:	cc                   	int3
5957cf:	cc                   	int3
5957d0:	b8 c4 00 00 00       	mov    $0xc4,%eax
5957d5:	e8 d6 bf 03 00       	call   0x5d17b0
5957da:	a1 c0 14 69 00       	mov    0x6914c0,%eax
5957df:	33 c4                	xor    %esp,%eax
5957e1:	89 84 24 c0 00 00 00 	mov    %eax,0xc0(%esp)
5957e8:	53                   	push   %ebx
5957e9:	55                   	push   %ebp
5957ea:	8b ac 24 d4 00 00 00 	mov    0xd4(%esp),%ebp
5957f1:	56                   	push   %esi
5957f2:	8b b4 24 d4 00 00 00 	mov    0xd4(%esp),%esi
5957f9:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
595800:	00
595801:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
595808:	00
595809:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
595810:	00
595811:	e8 fa 58 f8 ff       	call   0x51b110
595816:	8b d8                	mov    %eax,%ebx
595818:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
59581f:	00
595820:	85 db                	test   %ebx,%ebx
595822:	75 21                	jne    0x595845
595824:	68 6d 01 00 00       	push   $0x16d
595829:	68 e0 71 66 00       	push   $0x6671e0
59582e:	6a 41                	push   $0x41
595830:	68 7b 01 00 00       	push   $0x17b
595835:	6a 50                	push   $0x50
595837:	56                   	push   %esi
595838:	e8 d3 98 ff ff       	call   0x58f110
59583d:	83 c4 18             	add    $0x18,%esp
595840:	e9 35 03 00 00       	jmp    0x595b7a
595845:	8b 86 74 04 00 00    	mov    0x474(%esi),%eax
59584b:	57                   	push   %edi
59584c:	ff b0 9c 01 00 00    	push   0x19c(%eax)
595852:	e8 d9 28 fc ff       	call   0x558130
595857:	8b f8                	mov    %eax,%edi
595859:	83 c4 04             	add    $0x4,%esp
59585c:	85 ff                	test   %edi,%edi
59585e:	75 18                	jne    0x595878
595860:	68 75 01 00 00       	push   $0x175
595865:	68 e0 71 66 00       	push   $0x6671e0
59586a:	6a 44                	push   $0x44
59586c:	68 7b 01 00 00       	push   $0x17b
595871:	6a 50                	push   $0x50
595873:	e9 f8 02 00 00       	jmp    0x595b70
595878:	6a 00                	push   $0x0
59587a:	57                   	push   %edi
59587b:	e8 60 5a ff ff       	call   0x58b2e0
595880:	83 c4 08             	add    $0x8,%esp
595883:	85 c0                	test   %eax,%eax
595885:	75 1b                	jne    0x5958a2
595887:	68 7b 01 00 00       	push   $0x17b